Erreur requete SQL

fiacre -  
 fiacre -
Bonjour,
j'ai un code me permettant d'afficher le contenu de ma biblio suivant le genre de livres selectionné.A l'affichage, j'ai un tableau vide .j'arrive pas à situer mon erreur.
Voici mon code
<form action = "resultat_g.php" method = "post">
<fieldset>

<table align= "center" border=0 cellPadding=10 cellSpacing=1>

<tr><td>Genre </td><td><select name="genre">
<option value=""></option>
<option value="roman">Roman</option>
<option value="poesie">Poésie</option>
<option value="developpement">Developpement</option>
</select></td></tr>
<tr><td></td><td><input type="submit" value="Afficher" ></td></tr>
</table>
</fieldset>
</form>
--------------------------------------------
code de recuperation:
$rec_genre= $_POST['genre'];print $rec_genre;
$affich = "select * from livre where genre = '\".$rec_genre.\"'";
$res = mysql_query($affich,$liaison) or die('Erreur SQL !<br />'.$res.'<br />'.mysql_error());
$liste = mysql_fetch_assoc($res);
while($liste)
{ print "<tr><td>".$liste["id"]."</td><td>" .$liste["titre"]."</td><td>".$liste["auteur"]."</td><td>"
.$liste["annee"]."</td><td>".$liste["genre"]."</td><td>".$liste["etat"]."</td></tr>";
}

2 réponses

ghuysmans99 Messages postés 2496 Date d'inscription   Statut Contributeur Dernière intervention   340
 
$affich = "select * from livre where genre = '$rec_genre';";
[...]
while($liste = mysql_fetch_assoc($res))
{
print "<tr><td>{$liste['id']}</td><td>{$liste['titre']}</td><td>{$liste['auteur']}</td><td>{$liste['annee']}</td><td>{$liste['genre']}</td><td>{$liste['etat']}</td></tr>"; 
}


Ca serait mieux de tout mettre dans un script ... Tu veux que je te montre ?
1
ghuysmans99 Messages postés 2496 Date d'inscription   Statut Contributeur Dernière intervention   340
 
T'as oublié de corriger la ligne du while, c'est pour ça que ça ne fonctionne pas. Là il part en boucle infinie vu que $list ne devient jamais null vu que rien ne le modifie.
0
fiacre
 
je ne vois pas ce que he dois corriger dans le while

?php
$rec_genre= $_POST['genre'];print $rec_genre;
$affich = "select * from livre where genre = '$rec_genre';";
$res = mysql_query($affich,$liaison) or die('Erreur SQL !<br />'.$res.'<br />'.mysql_error());
$liste = mysql_fetch_assoc($res);
while($liste)
print "<tr><td>".$liste["id"]."</td><td>" .$liste["titre"]."</td><td>".$liste["auteur"]."</td><td>"
.$liste["annee"]."</td><td>".$liste["genre"]."</td><td>".$liste["etat"]."</td></tr>";
?>
0
ghuysmans99 Messages postés 2496 Date d'inscription   Statut Contributeur Dernière intervention   340
 
while($liste = mysql_fetch_assoc($res))
FAUT LIRE HEIN (tant que t'y es, lis aussi mon post #4)
0
fiacre
 
trop cool !! ça marche.
j'avais la tete ailleurs.
Merci c'est très gentil
0
ghuysmans99 Messages postés 2496 Date d'inscription   Statut Contributeur Dernière intervention   340
 
Ceci (https://pastebin.com/caWd1Xuk) devrait fonctionner. Fais de même pour tes autres scripts, ton appli prendra 2x moins de place. Pour les header/footer, tu peux les mettre dans une lib (sous forme de fonctions) et les appeler dans tes scripts. Ce sera plus facile à modifier et le code source sera plus court (plus lisible, donc).
0
fiacre
 
Infiniment merci .Tes conseils seront appliqués à la lettre
Encore merci
0