Je me remets à l'ouvrage après quelques jours d'interruption.
A présent je voudrai que Php m'aide à aligner les images, car le problème semble insoluble en recourant uniquement aux feuilles de style.
On va dire que mon conteneur mesure 450 pixels et que chaque image mesure 150 pixels. Mes images s'affichent donc sur trois colonnes. En revanche, si j'ai 5 images (3 +2) (je ne connais pas à l'avance ce nombre !), les deux restantes vont s'aligner à gauche, en raison du float de la feuille de style. Or, je voudrai que ces deux soient centrées. Si j'en ai 4 (3+1), je voudrai que la dernière soit centrée.
Ainsi puis-je distinguer trois cas :
- les images multiples de 3 s'affichent avec le style "gallery_a" ;
- les images restantes éventuelles, au nombre de 2, s'affichent avec le style "gallery_b";
- l'image restante éventuelle, au nombre de 1, s'affiche avec le style "gallery_c"
J'ai commencé par écrire :
$modulo = $result % 3;
$print modulo;
en me disant que le début de solution devait être là !A présent, je ne sais pas comment gérer le résultat pour le transformer en affichage.
Le début du code original (qui fonctionnait) pour afficher la galerie était le suivant :
foreach($gallery as $tmpbc)
{
... // Début d'instructions de traitement
echo '<dl class="gallery">';
... // Fin d'instructions de traitement
}
J'ai essayé d'écrire trois boucles avec while qui ne fonctionnent pas :while ($modulo == 1)
{
echo '<dl class="gallery_a">';
}
while ($modulo == 2)
{
echo '<dl class="gallery_b">';
}
while ($modulo == 3)
{
echo '<dl class="gallery_c">';
}
sans résultat.J'ai aussi testé avec for en initialisant un compteur, mais sans plus de résultat... Sans parler d'essais malheureux avec des boucles... infinies !
La difficulté est, je crois, d'afficher "gallery_a" (tant qu'il y a 3 images) puis "gallery_b" ou "gallery_c".
Merci pour votre aide, en espérant ne pas avoir été confus.
Cordialement,
V.