PHP/SQL Problème affichage de données
Résolu
sipherion
Messages postés
1809
Date d'inscription
Statut
Membre
Dernière intervention
-
sipherion Messages postés 1809 Date d'inscription Statut Membre Dernière intervention -
sipherion Messages postés 1809 Date d'inscription Statut Membre Dernière intervention -
Salut à tous !
Voila, j'ai un petit problème, et j'espère que vous pourrez corriger mon erreur.
J'ai créé un formulaire qui permet la gestion de stock. J'ai finit la partie "Saisie du matériel" mais j'ai un bug dans la partie "Affichage des données".
Je voudrais qu'une page Internet m'affiche la liste des composants déja enregistrés. J'ai tappé le code mais il ne me montre qu'une seule ligne, avec donc un seul résultat.
$requete="select nom,categorie,description,date_achat,quantite,marque from composant;";
$resultat=mysql_query($requete);
if(mysql_num_rows($resultat)){
echo("<table border=1><tr><td>Type</td><td>Nom</td><td>Marque< ;/td><td>Description</td><td>Date d'achat</td><td>Quantité</td></tr>");
while($resultat=mysql_fetch_assoc($resultat)){
$categorie=$resultat['categorie'];
$nom=$resultat['nom'];
$marque=$resultat['marque'];
$description=$resultat['description'];
$date_achat=$resultat['date_achat'];
$qu=$resultat['quantite'];
echo ("<tr><td>".$categorie."</td>
<td>".$nom."</td>
<td>".$marque."</td>
<td>".$description."</td>
<td>".$date_achat."</td>
<td><center>".$qu."</center></td></tr></table ></div>");
}
echo("</table>");
}
En plus il m'affiche une érreur : Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource
Pouvez me dire ce que je dois ajouter/supprimer/modifier pour qu'il m'affiche autant de ligne qu'il n'y a de composant ? Merci de votre aide
---
Administrateur réseaux sous Windows Server 2003 et 2008 Bêta et sous Linux Debian
Voila, j'ai un petit problème, et j'espère que vous pourrez corriger mon erreur.
J'ai créé un formulaire qui permet la gestion de stock. J'ai finit la partie "Saisie du matériel" mais j'ai un bug dans la partie "Affichage des données".
Je voudrais qu'une page Internet m'affiche la liste des composants déja enregistrés. J'ai tappé le code mais il ne me montre qu'une seule ligne, avec donc un seul résultat.
$requete="select nom,categorie,description,date_achat,quantite,marque from composant;";
$resultat=mysql_query($requete);
if(mysql_num_rows($resultat)){
echo("<table border=1><tr><td>Type</td><td>Nom</td><td>Marque< ;/td><td>Description</td><td>Date d'achat</td><td>Quantité</td></tr>");
while($resultat=mysql_fetch_assoc($resultat)){
$categorie=$resultat['categorie'];
$nom=$resultat['nom'];
$marque=$resultat['marque'];
$description=$resultat['description'];
$date_achat=$resultat['date_achat'];
$qu=$resultat['quantite'];
echo ("<tr><td>".$categorie."</td>
<td>".$nom."</td>
<td>".$marque."</td>
<td>".$description."</td>
<td>".$date_achat."</td>
<td><center>".$qu."</center></td></tr></table ></div>");
}
echo("</table>");
}
En plus il m'affiche une érreur : Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource
Pouvez me dire ce que je dois ajouter/supprimer/modifier pour qu'il m'affiche autant de ligne qu'il n'y a de composant ? Merci de votre aide
---
Administrateur réseaux sous Windows Server 2003 et 2008 Bêta et sous Linux Debian
A voir également:
- PHP/SQL Problème affichage de données
- Fuite données maif - Guide
- Supprimer les données de navigation - Guide
- Affichage double ecran - Guide
- Easy php - Télécharger - Divers Web & Internet
- Problème affichage fenêtre windows 10 - Guide
3 réponses
Attention !!
Ton erreur vient du fait que tu utilise le même nom de variable pour deux choses qui n'ont rien avoir entre elle :
Tu met ta ligne courante dans $resultat qui est en fait ton resultSet sur lequel tu es sencé roller.. donc ton prog passe bien une première fois dans ta boucle, et la variable $resultat devient donc un tableau au lieu d'un résultSet, donc le tour d'après ta condition n'est plus vérifiée et ton prog sort de la boucle. Au final tu n'as qu'une ligne d'affichée.
Remplace donc correctement tes variables en renommant ainsi :
Ton erreur vient du fait que tu utilise le même nom de variable pour deux choses qui n'ont rien avoir entre elle :
$resultat=mysql_fetch_assoc($resultat))
Tu met ta ligne courante dans $resultat qui est en fait ton resultSet sur lequel tu es sencé roller.. donc ton prog passe bien une première fois dans ta boucle, et la variable $resultat devient donc un tableau au lieu d'un résultSet, donc le tour d'après ta condition n'est plus vérifiée et ton prog sort de la boucle. Au final tu n'as qu'une ligne d'affichée.
Remplace donc correctement tes variables en renommant ainsi :
while ( $ligne=mysql_fetch_assoc($resultat)) { $categorie=$ligne['categorie']; ...