Erreur de requete

Bonjour,

je veux afficher des images de base de donnee mais il me donne le vrai nombre des images mais il affiche toujours la meme image

<?php
include("connexion.php");

if($_POST['marque']== "marque" &&$_POST['modele']=="modele" && $_POST['couleur']=="couleur" ){
$req="SELECT * FROM produit" ;
echo $req;
$res=mysql_query($req) or die(mysql_error());
$donne=mysql_fetch_array($res);

$req2= "SELECT * FROM photo,picture where photo.id_photo=picture.id_photo";
$req2;
$res2=mysql_query($req2) or die(mysql_error());
$donne2=mysql_fetch_array($res2);
echo "<table>";
while($donne2){
echo '<tr><td> <img src="image/images/'.$donne2['photoP'].'" width="90" height="60" />
<input type ="radio" name="ch" value="'.$donne2['id_P'].'" />
</td></tr>';

}
echo "</table>";
}

quelqu'un save ou se trouve l'erreur?

1 réponse

  • Votes
  • Date
  • Date décroissante
  1. Bonjour,

    Il ne faudrait pas plutôt mettre ceci ?

    echo "<table>";
    while($donne2=mysql_fetch_array($res2)){
    echo '<tr><td> <img src="image/images/'.$donne2['photoP'].'" width="90" height="60" />
    <input type ="radio" name="ch" value="'.$donne2['id_P'].'" />
    </td></tr>';
    
    
    } 
    


    Cordialement
    1. merci il marche maintenant mais je n'ai pas comprends ou se trouve l'erreur
    2. mysql_fetch_array doit être executée pour chaque ligne de la table
      d'où son intégration dans le while
      le while fait tant que mysql_fetch_array retourne une ligne, l'affichage du echo avec les données de la nouvelle ligne.
      si vous faites un while sur $donne2 en théorie le script devrait boucler, $donne2 est un statement avec des données dedans, équivallant à true pour un while et il ne change pas dans la boucle, donc on tourne en rond