Pb php/mysql recuperer numero dans un tableau
Résolu/Fermé
marie77
Messages postés
6
Date d'inscription
lundi 22 janvier 2007
Statut
Membre
Dernière intervention
22 janvier 2007
-
22 janv. 2007 à 09:55
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 22 janv. 2007 à 14:12
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 22 janv. 2007 à 14:12
A voir également:
- Pb php/mysql recuperer numero dans un tableau
- Tableau croisé dynamique - Guide
- Numero prive - Guide
- Comment recuperer un message supprimé sur whatsapp - Guide
- Tableau ascii - Guide
- Recuperer video youtube - Guide
8 réponses
nauno
Messages postés
342
Date d'inscription
vendredi 10 juin 2005
Statut
Membre
Dernière intervention
14 mai 2009
60
22 janv. 2007 à 11:25
22 janv. 2007 à 11:25
salut, je suis pas sur d'avoir tout compris mais il semblerait que tu récupère un tableau de num_coupon alors que tu n'envoie q'un seul num_coupon!
PS: il y'a une balise
PS: il y'a une balise
codequi permet de lire bcp plus facilement le code
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
22 janv. 2007 à 11:57
22 janv. 2007 à 11:57
Bonjour,
Je crois que j'ai localisé ton problème. En tous cas, c'est un problème !
Dans ce bout de code, tu mets N fois la ligne
<input type='hidden' name='i' value='$i'>
(N étant le nombre de résultats de ta requête).
Le problème, c'est que du coup, tu as N champs input ayant le même nom, "i" !
Donc, dans la suite, quand tu fais $i = $_GET['i'] , lequel de ces champs va être utilisé ? Vu le problème que tu décris (un seul numéro), je dirais bien qu'il prend le premier : <input name='i' value='1'>...
Pour résoudre ton problème, je te propose de "sortir" cette ligne (echo "<input type='hidden' name='i' value='$i'>) de la boucle. Ainsi, tu n'auras qu'un seul <input name='i' [...]>, qui vaudra la valeur la plus grande de i, c'est à dire le nombre total de coupons de ta requête.
Voilà, j'espère que ça va t'aider :)
Xavier
Je crois que j'ai localisé ton problème. En tous cas, c'est un problème !
while($resultat=mysql_fetch_array($req)) // creation tableau pour afficher resultat de la requete { // les mettres qu'entre les $RESULTAT permet d'eviter de répéter les meme DONNER $num_coupon=$resultat['num_coupon']; $num=$resultat['num_eleve']; //echo '<br>'.$num_coupon; // BUT pouvoir garder une trace des N° coupon afin aprés de les déclarer en Etat_facture=valider Mais on les cache // ." . $i . " permet de compter les numéros echo "<input type=hidden name=num_coupon_".$i ." value=".$num_coupon."></td></tr>"; $i=$i+1; echo "<input type='hidden' name='i' value='$i'></td></tr>"; echo $i; }
Dans ce bout de code, tu mets N fois la ligne
<input type='hidden' name='i' value='$i'>
(N étant le nombre de résultats de ta requête).
Le problème, c'est que du coup, tu as N champs input ayant le même nom, "i" !
Donc, dans la suite, quand tu fais $i = $_GET['i'] , lequel de ces champs va être utilisé ? Vu le problème que tu décris (un seul numéro), je dirais bien qu'il prend le premier : <input name='i' value='1'>...
Pour résoudre ton problème, je te propose de "sortir" cette ligne (echo "<input type='hidden' name='i' value='$i'>) de la boucle. Ainsi, tu n'auras qu'un seul <input name='i' [...]>, qui vaudra la valeur la plus grande de i, c'est à dire le nombre total de coupons de ta requête.
Voilà, j'espère que ça va t'aider :)
Xavier
marie77
Messages postés
6
Date d'inscription
lundi 22 janvier 2007
Statut
Membre
Dernière intervention
22 janvier 2007
22 janv. 2007 à 12:03
22 janv. 2007 à 12:03
oui pi etre,
et donc il faudrait que je sors :
// ." . $i . " permet de compter les numéros
echo "<input type=hidden name=num_coupon_".$i ."
value=".$num_coupon."></td></tr>";
$i=$i+1;
echo "<input type='hidden' name='i' value='$i'></td></tr>";
echo $i;
de ma boucle while..{ } je le met aprés avec les autres input
C'est sa ?
et donc il faudrait que je sors :
// ." . $i . " permet de compter les numéros
echo "<input type=hidden name=num_coupon_".$i ."
value=".$num_coupon."></td></tr>";
$i=$i+1;
echo "<input type='hidden' name='i' value='$i'></td></tr>";
echo $i;
de ma boucle while..{ } je le met aprés avec les autres input
C'est sa ?
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
22 janv. 2007 à 12:12
22 janv. 2007 à 12:12
C'est ça.
Ca donne quoi ?
Ca donne quoi ?
marie77
Messages postés
6
Date d'inscription
lundi 22 janvier 2007
Statut
Membre
Dernière intervention
22 janvier 2007
22 janv. 2007 à 12:49
22 janv. 2007 à 12:49
Donc je me suis remise dedans , donc j'ai essayé de mettre ce qu'on avait dit aprés les accolade du while, mais non sa ne marche pas car là justement il me prend qu'un numéro.
je vais tenté lors de la création du tableau et de son listage de le mettre en session, le truc aprés c'est q je sais pas comme reprendre les info pr que ma requete l'indentifie.
Je vais tester.
on verra.
lol.
je vais tenté lors de la création du tableau et de son listage de le mettre en session, le truc aprés c'est q je sais pas comme reprendre les info pr que ma requete l'indentifie.
Je vais tester.
on verra.
lol.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
marie77
Messages postés
6
Date d'inscription
lundi 22 janvier 2007
Statut
Membre
Dernière intervention
22 janvier 2007
22 janv. 2007 à 12:27
22 janv. 2007 à 12:27
J'ai pas encore testé je testerai tte a l'heure, car je me suis pris la tete dessus hier donc aujourd'hui j'ai décroché un peu et demande un peu d'aide.
Donc, je regarderai aprés mangé, et je te tiens au courant, ya pas de soucis.
Merci.
Donc, je regarderai aprés mangé, et je te tiens au courant, ya pas de soucis.
Merci.
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
22 janv. 2007 à 12:52
22 janv. 2007 à 12:52
Euh, je n'ai pas trop compris... Tu peux mettre ici ton code modifié ?
(et n'oublie pas de le mettre entre < code > et </ code>, c'est nettement plus facile à lire :) )
(et n'oublie pas de le mettre entre < code > et </ code>, c'est nettement plus facile à lire :) )
marie77
Messages postés
6
Date d'inscription
lundi 22 janvier 2007
Statut
Membre
Dernière intervention
22 janvier 2007
22 janv. 2007 à 13:59
22 janv. 2007 à 13:59
Comme je te disais j'ai essayé de mettre le comptage des num aprés la boucle, mais il ne prend pas en compte tous les num s'il en a plusieurs.
Donc je vais voir avec la session
... while($resultat=mysql_fetch_array($req)) // creation tableau pour afficher resultat de la requete { // les mettres qu'entre les $RESULTAT permet d'eviter de répéter les meme DONNER $num_coupon=$resultat['num_coupon']; $num=$resultat['num_eleve']; } // ." . $i . " permet de compter les numéros echo "<input type=hidden name=num_coupon_".$i ." value=".$num_coupon."></td></tr>"; $i=$i+1; echo "<input type='hidden' name='i' value='$i'></td></tr>"; echo $i;
Donc je vais voir avec la session
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
22 janv. 2007 à 14:12
22 janv. 2007 à 14:12
Il n'y avait qu'une seule ligne à enlecer du while !
Donc au final, ça donne plutôt :
Donc au final, ça donne plutôt :
while($resultat=mysql_fetch_array($req)) // creation tableau pour afficher resultat de la requete { // les mettres qu'entre les $RESULTAT permet d'eviter de répéter les meme DONNER $num_coupon=$resultat['num_coupon']; $num=$resultat['num_eleve']; // ." . $i . " permet de compter les numéros echo "<input type=hidden name=num_coupon_".$i ." value=".$num_coupon."></td></tr>"; $i=$i+1; echo "</td></tr>"; echo $i; } echo "<input type='hidden' name='i' value='$i'>";