Explication : le script affiche la liste des fichiers php contenus dans le répertoire $directory, chaque fichier étant suivi d'une checkbox.
La variable "on" si la checkbox est cochée est stockée dans le fichier inc.centre.php via le fichier centreconfig.php (une variable par checkbox)
Je souhaiterai afficher la checkbox déjà cochée si ma variable est "on" dans le inc.centre.php (executé par la ligne en rouge qui ne fonctionne pas ...)
TychoBrahe
Messages postés1309Date d'inscriptionsamedi 31 janvier 2009StatutMembreDernière intervention 5 juin 201312 8 févr. 2009 à 21:34
Salut,
JulSoft : oui et non, avec ça si la condition est validé la variable $checked prendra une valeur qui ne sera jamais modifiée.
cocacola0589 : tu te complique bien la vie pour lister un simple dossier ...
Ton instance de classe Directory $d ... tu peux la supprimer et remplacer ton for (qui aurai du être un foreach) par ceci :
J'ajoute quelques remarques :
- "on" n'est pas une variable mais une valeur, a ce sujet je ne vois pas comment tu défini la condiftion nécéssaire pour qu'une checkbox soit cochée ou non. Pour cette dernière raison, j'ai mis $test a la place du dit test définissant si une checkbox doit être cochée ou non.
- Nul besoin d'aller concaténer les chaines dans le echo, tu perds du temps en un calcul complètement useless. echo peux prendre plusieurs paramètres (a séparer par des virgules), c'est bien mieux de faire ainsi.
- Par pitié revois le HTML :
* L'attribut checked ne peux prendre comme valeur que checked (ce qui donne checked="checked") et rien d'autre.
* Lorsque l'on a un attribut, sa valeur doit toujours être encadrée par des guillemets doubles (pas de guillemets simple ou autre).
* Lorsque l'on ouvre une balise on est prié de la fermer (
et non
, etc).
* Le nom des éléments d'un formulaire doit avoir une balise <label> afin de le ratacher a l'élément qu'il décrit.
* On ne fait pas de présentation dans le HTML. Au lieux de mettre deux retour a la ligne définit un espacement plus grand grâce au CSS.
C'est bien domage que la plupart des navigateurs acceptent encore ces vielles syntaxes biscornues datant d'il y a si longtemps...
TychoBrahe
Messages postés1309Date d'inscriptionsamedi 31 janvier 2009StatutMembreDernière intervention 5 juin 201312 9 févr. 2009 à 14:38
scandir() a été implémentée en PHP5. Vu que tu utilise la classe Directory, je suppose que tu utilises PHP4.
Petit rappel provenant de php.net :
"Support for PHP 4 has been discontinued since 2007-12-31. Please consider
upgrading to PHP 5.2."
Si c'est toi qui gère le serveur, il est vivement conseillé de passer a PHP5, rester avec une vielle version qui n'est plus supportée est un gros risque pour un serveur de production. Si tu as un hébergeur mutualisé, il se peu qu'il propose plusieurs versions de PHP et que par défaut PHP4 soit utilisé (c'est le cas de 1&1 par exemple), a ce moment je t'invite a regarder dans leur documentation comment modifier ce comportement.
Sinon, même en restant sur cette viellerie obsolète qu'est PHP4 tu as toujours moyen de ne faire qu'une seule boucle (avec ton instance de la classe Directory par exemple) en suivant le même modèle..
Vous n’avez pas trouvé la réponse que vous recherchez ?