ARBORESCENCE RÉCURSIVE DANS UNE BASE DE DONNÉES

coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 - 13 juin 2008 à 11:23
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 - 13 juin 2008 à 19:31
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/46981-arborescence-recursive-dans-une-base-de-donnees

coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
13 juin 2008 à 19:31
nan mais un exit ici, ca sert VRAIMENT a rien...
cs_Sodams Messages postés 57 Date d'inscription mercredi 11 juin 2008 Statut Membre Dernière intervention 18 novembre 2009
13 juin 2008 à 17:42
Cette partie

if (is_dir ($dir)) // si c'est un repertoire
$dh = opendir ($dir); // on l'ouvre
else {
echo $dir. ' n\'est pas un repertoire valide'; // sinon on sort! Appel de fonction non valide
exit;
}

peux se remplacer par

if (!is_dir ($dir)) { // si c'est pas un repertoire
echo $dir. ' n\'est pas un repertoire valide'; // sinon on sort! Appel de fonction non valide
exit;
}

dh = opendir ($dir);

ce qui est plus propre je trouve.

Encore assez bien d'autre parties sont à optimiser, je te conseille donc de peut-être relire une fois ton code.
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
13 juin 2008 à 11:23
salut
ce code a quoi d'un code expert ?
il n'est pas objet
tu ne fais aucune verification d'erreur (opendir, closedir, mysql_query)
tu melanges ton code html a ta fonction php
tu utilises des variables globales
tu as des conventions de nomages bizares (majuscules / minuscules)
ta pile_BG n'etant pas declaree hors de ta fonction, et faisant un array_push dessus, tu devrais avoir des notices, donc ton code n'est pas strict...
ligne 8 tu utilises exit a la place de return...

ca c'etait pour les grosses erreurs, si je voulais chipoter, je mentionnerais aussi toutes les subtilites syntaxiques genre les differences entre
echo (""); echo ("<li>($NFM_BG

");
et
echo '<li>(', $NFM_BG, '

';
Rejoignez-nous