Erreur algorithme

roma28410 Messages postés 5 Statut Membre -  
Nabla's Messages postés 20731 Statut Contributeur -
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 20731 Statut Contributeur 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 1952 Statut Membre 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 5 Statut Membre
 
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 1952 Statut Membre 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 20731 Statut Contributeur 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 5 Statut Membre
 
mercci beaucoup de vote aide...
0
Bill Gate 2 Messages postés 283 Statut Membre 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 20731 Statut Contributeur 3 193
 
si c'est résolu, merci de mettre l'article en résolu ...
0