2 Avril 2008 : Une nouvelle version est disponible permettant l'utilisation de jQuery pour ne recharger que le treeview et non plus toute la page lors de l'ouverture ou la fermeture d'un noeud.

Description

PhpTliste Le Treeview est le premier composant que j'ai développé (à l'époque en C++ pour Windows 3). Depuis cette époque j'adapte ce développement dans différents langages. C'est ainsi que je vous présente le dernier de la famille Tliste la version PHP. Ce composant est un freeware sous licence GPL. Ce composant est un ensemble de deux classes PHP tliste la classe de base et rd_l qui représente un élément de la liste. Il est, à mon avis, relativement simple d'utilisation et facilement adaptable. C'est encore une version "béta" qui doit être nettoyée et je pense également produire deux versions distinctes pour PHP-4 et PHP-5.

Exemple


Warning: fclose(): supplied argument is not a valid stream resource in /home/soufflem/www/fr/wp-content/plugins/exec-php/includes/tliste.php on line 150

Fonctionnement

Avant toute chose il est préférable de voir un code source.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php include("tliste.php"); ?>
<html>
<head><title>Exemple tListe PHP</title>
<link REL=STYLESHEET TYPE='text/css' HREF='./tli.css'>
</head>
<body>
<?php
	$tree1 = new tliste("_1") ;
	$tree2 = new tliste("_2", "txt/tliste2.txt") ;
?>
<table width="80%"><tr valign="top">
<td width="50%"><?php  $tree1->display() ; ?></td>
<td width="50%"><?php  $tree2->display() ; ?></td>
</tr></table>
</body></html>
Vous remarquerez qu'il y a vraiment très peu de choses dans ce code pour générer deux treeviews indépendants dans la même page. Je vais détailler cela ci-dessous :
  • include("tliste.php") :Comme toujours on doit commencer par inclure le composant/code désiré.
  • $tree1 = new tliste("_1") ; : Création du premier treeview en lui donnant comme identifiant "_1" et en utilisant la valeur de défaut des autres paramètres. Cet identifiant "_1" permet d'utiliser plusieurs treeview dans la même page (les paramètres passés étant préfixés par cet ID).
  • $tree2 = new tliste("_2", "txt/tliste2.txt") ; : Création du second treeview en lui donnant comme identifiant "_2" et en lui précisant de chercher sa description dans le fichier tliste2.txt.
  • $tree1->display() ; : Affichage du treeview

Les fonctions de base

FonctionParamètresDescription
tliste$idd = "" // ID du treeview $sf = "" // fichier de données $cc = "p1" // style css Constructeur : initialisation des paramètres et lecture du fichier s'il existe
getParameter$sf = "" // fichier de données Lectures des paramètres (appelé par le constructeur - je pense la passer "private")
setCsep$sP // Caractère séparateur setter : définition du caractère de séparation (défaut §)
setImagePath$sP // prefix de chaque image setter : définition du répertoire et préfixe des images (défaut img/ot) cela génèrera des images du type img/ot5.gif
readFile$sP // fichier Lecture du fichier fourni en paramètre
display- Affichage du treeview
addElt$sP // Element sous forme de chaine Ajoute un item a la liste; Sont format est du style : 0 § Titre § 5 § http://www.berthou.com/fr/ § ?Mon blog

Format du fichier (option)

ColumNameTypeDescription
1LevelIntegerItem level 0..20
2Item NamestringName of item (URL of bitmap if level 99)
3Bitmap numberIntegerItem bitmap (0..9)
Rem : MOD(2) = 0 => treenode close (if node)
MOD(2) = 1 => treenode open (if node)
2 node disable.
sample if node "0, 10,12,20,..." => node close
"1, 11,13,21,..." => node open
4Dest URLstringDest. URL ( begin "./" if local URL )
5TargetstringTarget Frame (overide default )
-Help BulletstringBegin with "?" String help display in bullet, you can define this param in 5, 6 or 7 col.

Téléchargement

phptliste.zip

Be Sociable, Share!