[php] lecture d'un tableau
Résolu/Fermé
antic80
Messages postés
4785
Date d'inscription
lundi 30 mai 2005
Statut
Contributeur
Dernière intervention
9 septembre 2009
-
30 avril 2006 à 19:47
olm - 13 oct. 2010 à 15:21
olm - 13 oct. 2010 à 15:21
A voir également:
- [php] lecture d'un tableau
- Tableau word - Guide
- Code ascii tableau - Guide
- Tableau croisé dynamique - Guide
- Trier un tableau excel - Guide
- Comment imprimer un tableau excel sur une seule page - Guide
5 réponses
crabs
Messages postés
908
Date d'inscription
lundi 18 avril 2005
Statut
Membre
Dernière intervention
3 août 2008
507
1 mai 2006 à 07:10
1 mai 2006 à 07:10
Salut,
Chaque appel à mysql_fetch_array() retourne une ligne résultat de ta requette.
Donc la boucle for dans le while ne sert pas à grand chose.
Ajoute donc une gestion de ton indice dans le while et supprime le for. Tu
peux ainsi remplacer ton while par un for (plus élégant) :
A+, crabs
Chaque appel à mysql_fetch_array() retourne une ligne résultat de ta requette.
Donc la boucle for dans le while ne sert pas à grand chose.
Ajoute donc une gestion de ton indice dans le while et supprime le for. Tu
peux ainsi remplacer ton while par un for (plus élégant) :
for($i=1;$row = mysql_fetch_array($req); $i++) { $Id[$i]=$row['id']; $Cat[$i]=$row['Categorie']; $Question[$i]=$row['question']; }
A+, crabs
antic80
Messages postés
4785
Date d'inscription
lundi 30 mai 2005
Statut
Contributeur
Dernière intervention
9 septembre 2009
1 161
1 mai 2006 à 12:21
1 mai 2006 à 12:21
alors voila que ce soit avec ton code ou le mien j'ai un soucis
le but de la page est d'afficher une question en fonction de son numéro.
si j'affiche les valeurs du tableau tout va bien
a partir de cette page je valide la reponse et fais appelle a une page de verification qui en plus de verifier la réponse , incremente le numéro de la question.
au retour sur la feuille principale le numéro de la question est bon mais j'obtient pour la question le message d'erreur suivant
undefined variable $Tab......
en fait il ne reconnait plus le tableau
voila le code de la page principale
et voici le code de la page verif
je m'en sort pas du tout
le but de la page est d'afficher une question en fonction de son numéro.
si j'affiche les valeurs du tableau tout va bien
a partir de cette page je valide la reponse et fais appelle a une page de verification qui en plus de verifier la réponse , incremente le numéro de la question.
au retour sur la feuille principale le numéro de la question est bon mais j'obtient pour la question le message d'erreur suivant
undefined variable $Tab......
en fait il ne reconnait plus le tableau
voila le code de la page principale
$Server="localhost"; $User="root"; $Password=""; $db = mysql_connect($Server, $User, $Password) or die('Erreur de connexion '.mysql_error()); mysql_select_db('mysql',$db) or die('Erreur de selection '.mysql_error()); if(isset($_GET['categorie'])) $Categorie=$_GET['categorie']; else $Categorie=""; $sql = "SELECT * FROM questions where Categorie='$Categorie'"; // on envoie la requête $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); $NbQ=mysql_num_rows($req); $sql2 = "SELECT * FROM apprenant where nom='$Nom' and prenom='$Prenom' and pseudo='$pseudom'"; $req2 = mysql_query($sql2) or die('Erreur SQL !<br>'.$sql2.'<br>'.mysql_error()); while($row = mysql_fetch_array($req2)) { $NumQuestion=$row['NumQuestion']; } $i=1; $NbQ=$NbQ+1; while($row= mysql_fetch_array($req)) { $Id=$row['id']; $Cat=$row['Categorie']; $Question=$row['question']; $Num=$i++; $Tab[$Num]=array($Id,$Cat,$Question); } ?>
et voici le code de la page verif
<?php $Nom=$_SESSION['nom']; $Prenom=$_SESSION['prenom']; @$pseudom=addslashes(htmlentities($_SESSION['pseudom'])); $sql = "SELECT * FROM apprenant where nom='$Nom' and prenom='$Prenom' and pseudo='$pseudom'"; $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); while($row = mysql_fetch_array($req)) { $NumQuestion=$row['NumQuestion']; } $NumQuestion=$NumQuestion+1; $sql2="UPDATE apprenant SET NumQuestion='$NumQuestion' where nom='$Nom' and prenom='$Prenom' and pseudo='$pseudom'"; $req2 = mysql_query($sql2) or die('Erreur SQL !<br>'.$sql2.'<br>'.mysql_error()); ?>
je m'en sort pas du tout
crabs
Messages postés
908
Date d'inscription
lundi 18 avril 2005
Statut
Membre
Dernière intervention
3 août 2008
507
4 mai 2006 à 05:57
4 mai 2006 à 05:57
Salut,
Les morceaux de code que tu donnes ne montre pas l'erreur.
Donnes le message d'erreur en entier ainsi que les lignes qui peuvent
être intéressantes pour en trouver la raison et en particulier celle qui
provoque l'erreur.
Donne aussi les structure de tes tables. Le numéro de la question devrait
être dans ta table questions et il serait préférable que tu fasses des requettes
avec des clause restrictive de type "WHERE NumQuestion='...' plutôt que
de parcourir la table à chaque fois.
A+, crabs
Les morceaux de code que tu donnes ne montre pas l'erreur.
Donnes le message d'erreur en entier ainsi que les lignes qui peuvent
être intéressantes pour en trouver la raison et en particulier celle qui
provoque l'erreur.
Donne aussi les structure de tes tables. Le numéro de la question devrait
être dans ta table questions et il serait préférable que tu fasses des requettes
avec des clause restrictive de type "WHERE NumQuestion='...' plutôt que
de parcourir la table à chaque fois.
A+, crabs
antic80
Messages postés
4785
Date d'inscription
lundi 30 mai 2005
Statut
Contributeur
Dernière intervention
9 septembre 2009
1 161
1 mai 2006 à 10:29
1 mai 2006 à 10:29
ok je te remercie je vais tester ton code meme si j'avais trouver une autre solution.
merci a toi
merci a toi
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
antic80
Messages postés
4785
Date d'inscription
lundi 30 mai 2005
Statut
Contributeur
Dernière intervention
9 septembre 2009
1 161
4 mai 2006 à 08:10
4 mai 2006 à 08:10
merci crabs le probleme est résolu
13 oct. 2010 à 15:21