Erreur algorithme

roma28410 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
Nabla's Messages postés 18203 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
je programme une application en php et ces boucles me pose grand probleme.
Impossible de trouver l'erreur.

erreur : Fatal error: Maximum execution time of 60 seconds exceeded in

code :

//suppression des doublons de champs dans le tableau et donc mise a jour du tab des valeur
for($i=0;$i<=sizeof($tab_chaine_champ)-1;$i++){
for($c=0;$c<=sizeof($tab_chaine_champ)-1;$c++){
if($i=!$c){
if($tab_chaine_champ[$i]==$tab_chaine_champ[$c]){
//alors on supprime le doublon des deux tableau
$tab_chaine_champ[$i]=array_shift($tab_chaine_champ);
$tab_chaine_valeur[$i]=array_shift($tab_chaine_valeur);
}
}
}
}

voila si vous avez une petite idée ou des conseils, cela m'aiderai fortement.. Merci

8 réponses

Nabla's Messages postés 18203 Date d'inscription   Statut Contributeur Dernière intervention   3 193
 
erreur : Fatal error: Maximum execution time of 60 seconds exceeded in

ton script a mis plus de 60 secondes à s'executer... tu t'es pris le timeout dans la gueule
t'as pourtant pas l'air d'etre dans uen boucle infini

ils sont grands tes tableaux ? essayes d'abord avec de petits tableau...
0
giheller Messages postés 1882 Date d'inscription   Statut Membre Dernière intervention   142
 
bonsoir,
ce message dit que l'exécution s'arrête car le serveur pense que vous êtes dans une boucle infinie.
si ce n'est pas le cas le temps d'exécution est trop long.

si vous êtes sûr de vous,
vous pouvez réinitialiser le temps au changement d'indice en ajoutant
set_time_limit(nnn); //nnn à modifier


0
roma28410 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
non les tableau sont de petite tailles, qui peuvent varier selon les formulaires qui ont étés remplis.
soit une taille de 2 a 20..
0
giheller Messages postés 1882 Date d'inscription   Statut Membre Dernière intervention   142
 
Bonsoir,
même si les tableaux sont de petites tailles, on est pas à l'abri d'une erreur de programmation entrant ainsi dans une boucle infinie.
avant de dire non, vérifiez vos boucles ou alors considerez que lemessage affiché est faux.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Nabla's Messages postés 18203 Date d'inscription   Statut Contributeur Dernière intervention   3 193
 
tu es bien dans une boucle infini, et voici là ou ca bloque:
if($i=!$c){

en gros, tu lui dis $i prend la valeur de pas $c (donc 0 si différent de 1, et 1 si 0)...
a mon avis, tu voulais faire:
if($i!=$c){

voila, c'est uen erreur de frappe qui t'a mené à une boucle infini (et pas de bol pour toi, cette erreur voulait dire quelque chose pour le compilo, donc t'as pas eu d'erreur avant le timeout ....)
0
roma28410 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
mercci beaucoup de vote aide...
0
Bill Gate 2 Messages postés 189 Date d'inscription   Statut Membre Dernière intervention   17
 
efface tout lol !!!! sa va t'aidé naaan jue plaisante
regarde au niveau de ($i=0;$i<=sizeof($tab_chaine_champ)-1;$i++){ regarde bien ce tableau
0
Nabla's Messages postés 18203 Date d'inscription   Statut Contributeur Dernière intervention   3 193
 
si c'est résolu, merci de mettre l'article en résolu ...
0