Page 1 sur 1

Problème avec l'affichage d'images...

Posté : 16 mars 2009, 21:15
par yannick.duponchel
Bonjour, voilà mon problème, j'ai un dossier qui contient plusieurs photos et je l'ai affiche grace à ce code:




<?php
// url du fichier qui contient les images
$urlphoto = "photos/Accueil/";

// nom du répertoire qui contient les images
$nomRepertoire = "photos/Accueil/Miniatures/";
if (is_dir($nomRepertoire))
{
$dossier = opendir($nomRepertoire);
while ($Fichier = readdir($dossier))
{
if ($Fichier != "." AND $Fichier != ".." AND (stristr($Fichier,'.gif') OR stristr($Fichier,'.jpg') OR stristr($Fichier,'.png') OR stristr($Fichier,'.bmp')))
{
// Hauteur de toutes les images

echo '<a target="_blank" href="', $urlphoto, '/',$Fichier, '">';
echo '<img src="', $urlphoto, '/',$Fichier, '" ';
echo "width=108 height=144";
echo "</a>&nbsp;";
}
}
closedir($dossier);
}else{
echo' Le répertoire spécifié n\'existe pas';
}
?>


le soucis c'est que je voudrais qu'après toutes les 5 photos par exemple, les 5 suivantes soient mises en dessous. Pouvez-vous m'aider. D'avance merci

Posté : 16 mars 2009, 22:41
par Ryle
Modération :
yannick.duponchel, afin d'améliorer la lisibilité de ton message,
pense à utiliser les balises [code] ou [php] (selon le langage utilisé).

Elles sont disponibles au-dessus de la zone de saisie de ton message
lorsque tu postes un nouveau message.

Des indications sont disponibles sur la manière de mettre en forme vos messages dans la FAQ


Pour répondre à ta question, il suffit de forcer le retour à la ligne tous les 5 éléments en collant un <br /> par exemple. Quant à la façon de savoir quand est ce que tu en es à 5 éléments, il te suffit d'un simple compteur et l'opérateur modulo (%) :)

Posté : 16 mars 2009, 23:43
par yannick.duponchel
Merci bien pour ta réponse, et désolé je suis novice je ne maitrise donc pas encore très bien toutes les subtilités du forum. Je ferai attention la prochaine fois :(

Posté : 17 mars 2009, 11:30
par Aureusms
Utilise les propriétés CSS pour faire un décalage visuel avec une marge basse (margin-bottom). Je te propose pour cela :
<?php
// url du fichier qui contient les images
$urlphoto = "photos/Accueil/";

// nom du répertoire qui contient les images
$nomRepertoire = "photos/Accueil/Miniatures/";
if (is_dir($nomRepertoire))
{
$dossier = opendir($nomRepertoire);
$nombre_de_photo_par_paragraphe = 5;
$i =0;
while ($Fichier = readdir($dossier))
{
if ($Fichier != "." AND $Fichier != ".." AND (stristr($Fichier,'.gif') OR stristr($Fichier,'.jpg') OR stristr($Fichier,'.png') OR stristr($Fichier,'.bmp')))
{
// Hauteur de toutes les images

//création du paragraphe 
if ($i == 0) echo '<p style="margin-bottom : 3em;">';

echo '<a target="_blank" href="', $urlphoto, '/',$Fichier, '">';
echo '<img src="', $urlphoto, '/',$Fichier, '" ';
echo "width=108 height=144";
echo "</a>&nbsp;";

if ($i == 0) echo '</p>';
$i++;
if ($i == $nombre_de_photo_par_paragraphe) $i=0;
}
}
closedir($dossier);
}else{
echo' Le répertoire spécifié n\'existe pas';
}
?>