{MySQL} Page en PHP ne renvoie que la première lig
Fermé
magicpp
Messages postés
13
Date d'inscription
lundi 5 février 2007
Statut
Membre
Dernière intervention
27 février 2020
-
7 sept. 2009 à 18:51
le père - 8 sept. 2009 à 17:00
le père - 8 sept. 2009 à 17:00
A voir également:
- {MySQL} Page en PHP ne renvoie que la première lig
- Supprimer une page word - Guide
- Mettre google en page d'accueil - Guide
- Traduire la page - Guide
- Vers quelle adresse web renvoie ce lien - Guide
- Mysql community server - Télécharger - Bases de données
2 réponses
moderno31
Messages postés
870
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
8 août 2012
92
7 sept. 2009 à 20:04
7 sept. 2009 à 20:04
hello,
question
directement dans ta base de données quand tu fais
la liste correspond à ce que tu attends ?
Cette manip permet de savoir identifier le souci. Est-ce coté mysql ou est-ce coté programme php. Et à mon avis çà vient du php.
Je t'explique
Tu dois monter ta liste dans le boucle
1- tu as ta requete
$query = "SELECT product_sku,product_name,product_in_stock,prix_achat FROM jos_vm_product";
2- tu envoies à la BD
$result = mysql_query($query);
2.1- entête de tableau
echo("<table>");
echo("...");ect
3- tu récupéère le jeu de résultats
while($row = mysql_fetch_row($result)){ //Ouverture du boucle
//Construire ton tableau proprement
echo("<tr>");
echo("<td>".$row[0];."</td>");
echo("<td>".$row[1]."</td>");
echo("<td>".$row[2]."</td>");
echo("<td>".$row[3]."</td>");
echo("<td>".$row[4]."</td>");
echo("</tr>");
}//fermeture de la boucle.
Donc tanqu'il y a des lignes il va te monter ce tableau.
Ton entête doit etre en dehors de la boucle comme exemple
<td width=\"20\" <--
pk tu n'écris pas <td width="20" ça passe très bien
question
directement dans ta base de données quand tu fais
SELECT product_sku,product_name,product_in_stock,prix_achat FROM jos_vm_product
la liste correspond à ce que tu attends ?
Cette manip permet de savoir identifier le souci. Est-ce coté mysql ou est-ce coté programme php. Et à mon avis çà vient du php.
Je t'explique
Tu dois monter ta liste dans le boucle
1- tu as ta requete
$query = "SELECT product_sku,product_name,product_in_stock,prix_achat FROM jos_vm_product";
2- tu envoies à la BD
$result = mysql_query($query);
2.1- entête de tableau
echo("<table>");
echo("...");ect
3- tu récupéère le jeu de résultats
while($row = mysql_fetch_row($result)){ //Ouverture du boucle
//Construire ton tableau proprement
echo("<tr>");
echo("<td>".$row[0];."</td>");
echo("<td>".$row[1]."</td>");
echo("<td>".$row[2]."</td>");
echo("<td>".$row[3]."</td>");
echo("<td>".$row[4]."</td>");
echo("</tr>");
}//fermeture de la boucle.
Donc tanqu'il y a des lignes il va te monter ce tableau.
Ton entête doit etre en dehors de la boucle comme exemple
<td width=\"20\" <--
pk tu n'écris pas <td width="20" ça passe très bien
Bonjour
Tu dis que tu ne vois que la première référence, je dirais plutôt que tu ne vois que la dernière.
En effet, tu fais bien un while pour balayer toutes les lignes de résultats, mais tu ne fais l'affichage (echo...) qu'après être sorti du while. Donc ce que tu affiche, c'est ce qui avait été mis dans tes variables lors de la dernière boucle.
Il suffit presque de déplacer le } qui referme ton while, et de le mettre après le dernier echo.
Mais pour éviter de répéter aussi les <br /> et le <table>, il faut les mettre avant la boucle. et ne pas oublier le </table> après la boucle.
Tu dis que tu ne vois que la première référence, je dirais plutôt que tu ne vois que la dernière.
En effet, tu fais bien un while pour balayer toutes les lignes de résultats, mais tu ne fais l'affichage (echo...) qu'après être sorti du while. Donc ce que tu affiche, c'est ce qui avait été mis dans tes variables lors de la dernière boucle.
Il suffit presque de déplacer le } qui referme ton while, et de le mettre après le dernier echo.
Mais pour éviter de répéter aussi les <br /> et le <table>, il faut les mettre avant la boucle. et ne pas oublier le </table> après la boucle.