[Conception] deboguage d'une fonction
bonjour,
j'ai besoin d'aide pour corriger une erreur
en fait j'ai ecrit une fonction qui va me mettre a jour l'ordre_type (c'est le nom de la colonne dans la table type_document dans ma base de données)
ordre qui est actuellement a 0 dans la BD pour les types fils comme vous pouvez le constater ici :
http://i7.photobucket.com/albums/y28...223/liste4.jpg
et moi j'aimerai bien que ma fonction me fasse la numerotation suivante dans la BD
: (j'ai mis en evidence en rose fluo les tpyes parents)
http://i7.photobucket.com/albums/y28...1223/liste.jpg
pour cela , j'ai ecrit cette fonction pour laquelle je ne suis meme pas sure que l'algo fonctionne bien
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| <?php
function update_ordre_type ($tab){ //met a jour l'ordre dans le tableau des types
$childArray = array(); //tableau des fils
foreach ($tab as $id => $element) { //pour chaque type du niveau courant du tableau des types
$cpt=0;
$tmp = update_ordre_type($element["childs"]); //on met a jour l'ordre de des types fils
if ($tmp != NULL) { //si il reste des types fils a examiner
$cpt ++;
$requete= "UPADTE type_document set ordre_type =".$cpt."WHERE TYPE_PARENT=".$element['id'];
$resultat=db_send_query($lang_error['sql update failed'], $requete);
$element['childs'] = $tmp; // affecte le nouveau tableau des types
$childArray[$element['id']] = $element;
}
}
if(sizeof($childArray)>0) return $childArray;
else
return NULL;
}
?> |
mais ca me renvoie cette erreur alors que je ne vois pas ce qui est incorrecte dans l'argument de la fonction
Warning: Invalid argument supplied for foreach() in ../includes/functions.php on line 1085
est ce que vous pouvez m'aider svp
merci d'avance
tu fais un champ supplémentaire
Tu fais un champ
Code:
niveau INT UNSIGNED NOT NULL
Tu mets à 1 pour MAQ, PR, MOP, etc...
Tu mets à 2 pour 00, 10, A, B, etc..
Tu mets à 3 pour 430, 470, etc...
et ainsi de suite
Ce sera beaucoup plus facile d'incrémenter en sachant à quel niveau ça se trouve. Toi tu le sais mais l'ordinateur non!!!