Page 1 sur 1

pb pour afficher des images[résolu]

Posté : 08 mai 2010, 11:11
par pey'
Bonjour!

Je débute avec php et pour mon site, j'ai envie que mes créations s'affichent avec une boucle en php pour m'éviter de réecrire les balises img à chaque fois. J'ai donc crée une base de donnée dans laquelle j'ai crée une table avec quelques créations pour faire un test.

Dans la page où je veux que mes images s'affichent, j'ai marqué ce code:

<?php
$db=mysql_connect("localhost","root","");
mysql_selectdb("time",$db);
?>

(pour lier ma table)

<?php


$req="SELECT * FROM avatars WHERE nom='skins'";
$result=mysql_query($req);
$tab=mysql_fetch_array($result);

for($i=0;$i<=5;$i++)
if($tab["nom"])
echo"<img src= ".$tab["chemin"]."/>";

?>

Le problème est que c'est toujours la même image qui s'affiche en boucle, alors que je voudrais que ce code affiche toutes les images de ma table qui ont pour nom skins.

Merci d'avance pour votre aide!

Re: pb pour afficher des images

Posté : 08 mai 2010, 11:43
par blof
Bonjour,

jette un oeil sur ce site ( ou d'autres ) :
http://www.phpdebutant.org

en particulier sur la colonne de droite : 16. Interroger une table MySQL

Re: pb pour afficher des images

Posté : 08 mai 2010, 11:50
par visualight
Bonjour,

Tu dois utiliser la boucle while qui est plus appropriée dans ton cas.
<?php
$db=mysql_connect("localhost","root","");
mysql_selectdb("time",$db);

$req="SELECT * FROM avatars WHERE nom='skins'";
$result=mysql_query($req);

// Je désactive ceci pour l'implémenter dans la boucle
// $tab=mysql_fetch_array($result);

/*A la place de FOR, il faut utiliser WHILE
for($i=0;$i<=5;$i++)
if($tab["nom"])*/

while ($tab=mysql_fetch_array($result)) {
echo"<img src= ".$tab["chemin"]."/>";
}

?>
a+ ;)

Re: pb pour afficher des images

Posté : 08 mai 2010, 12:35
par pey'
merci beaucoup pour vos réponses!
Maintenant ça marche exactement comme il faut avec ce que visualight m'a conseillé! merci encore =)