affichage des images tant que
Bonjour à tous et à toutes, Je suis en train de débuter en PHP et je souhaite réaliser un petit site perso, mais j'ai beaucoup idée mais très peu de connaissance pour réussir à écrire tout cela en code... Alors voici mon premier post, ce qui veux dire que d'autre vont surement suivre...... Donc je me permet de vous solliciter, en espérant que vous pourrez m'aider. J'ai une base "ma_base" avec 3 tables "categorie" ; "images" et "jeux" : categorie : id_categorie (cle primaire) et categorie images : id_images (cle primaire) ; id_jeux (cle secondaire) ; legende ; images ; logo jeux : id_jeux (cle primaire) ; titre ; date ; id_categorie ; langue ; description ; version ; prix ; lien1 ; lien2 Dans ma page Mes Jeux voici mon code :
<?php
mysql_connect("localhost", "user", "pass"); // Connexion à MySQL
mysql_select_db("ma_base"); // Sélection de la base
$reponse = mysql_query("SELECT jeux.*, categorie.*, images.* FROM categorie, jeux, images WHERE categorie.id_categorie = jeux.id_categorie and images.id_jeux=jeux.id_jeux"); // Requête SQL
while ($donnees = mysql_fetch_array($reponse) )
{
?>
<table width="100%" border="0">
<tr>
<td><strong>Jeux</strong> : <?php echo $donnees['titre']; ?></td>
<td><img src=<?php echo $donnees['logo']; ?> width="177" height="174" /></td>
<td>Prix : <?php echo $donnees['prix']; ?> uro</td>
<td> </td>
</tr>
<tr>
<td>Date de sortie de l'application : <?php echo $donnees['date']; ?> </td>
<td>Version de l'application : <?php echo $donnees['version']; ?></td>
<td>Catégorie : <?php echo $donnees['categorie']; ?></td>
</tr>
<tr>
<td>Langue : <?php echo $donnees['langue']; ?></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td><p>Description : </p>
<p>&<?php echo $donnees['description']; ?>;</p></td>
<td></td>
<td> </td>
</tr>
<tr>
<td>LIEN 1 : <a href=<?php echo $donnees['lien1']; ?> title=<?php echo $donnees['titre']; ?> target="_blank">Lien vers iTunes</a></td>
<td>LIEN 2 : <?php echo $donnees['lien2']; ?></td>
<td> </td>
</tr>
<tr>
<td><img src="<?php echo $donnees['images']; ?>" /></td> // je souhaite que tant que des images correspondantes au jeu il les affiche et là je bloque complèment
<td></td>
<td></td>
</tr>
</table>
<p><br />
<br />
</p>
<p>
<?php
}
?>
</p>
Réponses apportées à cette discussion
Ta question n'est pas d'une grande clarté...
N'oublie jamais un principe fondamental en programmation : si tu poses la bonne question, tu auras résolu les 3/4 du problème, parce que si tu poses la bonne question, çasignifie que tu as correctement compris et identifié la nature du problème.
Là, on doit deviner : à première vue je serais tenté de penser que pour un jeu donné, tu peux avoir plusieurs images : cest bien ça ?
Ceci étant, il va aussi falloir un peu optimiser ton code coté SQL : ta requête telle qu'elle est construite va te retourner un certain nombre de données inutiles : le « SELECT * » est à éviter : c'est pratique pour voir rapidement en phase de développement, mais pour une application, on limite à ce dont on a vraiment besoin. Tu peux aussi apprendre à faire des jointures normalisées.
Un autre détail : tu dois avoir une colonne «date» dans ta table «jeux» : le mot «date» est un mot réservé en SQL, utilise un nom explicite, par exemple date_creation.
Ta requête revue et remise en forme va ressembler à ceci :
SELECT
j.titre,
j.logo,
j.prix,
j.`date`,
j.version,
j.langue,
j.description,
j.lien1,
j.lien2,
c.categorie,
i.image
FROM jeux j
JOIN categorie c ON j.id_categorie = c.id_categorie
JOIN images i ON j.id_jeux = i.id_jeux
Maintenant pour ton problème, confirme mon hypothèse et on partira dans ce sens, sinon sois plus clair dans ta question..