Probleme de boucle [Résolu]

Signaler
Messages postés
121
Date d'inscription
mercredi 27 octobre 2004
Statut
Membre
Dernière intervention
5 mars 2007
-
Messages postés
121
Date d'inscription
mercredi 27 octobre 2004
Statut
Membre
Dernière intervention
5 mars 2007
-
Bonjour à tous,

Je cherche à afficher toutes les images contenues dans un répertoire (100 images au total).
Je veux afficher qu'un nombre maxi d'images par page (25 images) et faire des liens pour les pages suivantes.
J'ai un soucis de boucle, voici le code :


$dossier
= opendir ( "." );

while
($fichier = readdir ($dossier)) {
$extent= substr ($fichier,strrpos($fichier, "." ));
$extensaj =strtoupper($extent);
if(
$extensaj= = '.JPG' || $extensaj == '.JPEG' || $extensaj == '.GIF' || $extensaj == '.PNG' ){

$tablo [] =$fichier;
}
}
$nbcol = 6;
//--- dйtermine le nombre de colonnes

$nbligne = 4;
//--- dйtermine le nombre de lignes

echo
( "\" );
$nb_total = count ($tablo);

if
(!isset($_GET['debut'])) $_GET['debut'] = 0;
$nb_affichage_par_page = $nbcol *$nbligne;
$page = ceil($nb_total/$nb_affichage_par_page);
$page_active = floor (($debut/$nb_affichage_par_page)+1);

for(
$i =$_GET[ 'debut' ];$i<$nb_total;$i++){

$valeur = $tablo [$i];
$nom = substr($valeur, 0, -4);

if(
$i%$nbcol= =0)
echo
( \"----
\" );
echo
(\"");
?>

',null,'width =800,height= 600, status=no, directories=no, toolbar=no, location=no, menubar=no, scrollbars=yes, resizable=yes');"><?php echo(
"" width=\"130\" height=\"100\" border=\"0\">
".$nom."
, \"
);

if ($i%$nbcol ==($nbcol-1))
echo
(\"\");
}
echo
("
"
);
echo(
"".barre_navigation($nb_total, $nb_affichage_par_page, $_GET['debut'], 10)."
"
);

closedir ($dossier);

Le probleme vient de ma boucle for puisque sur la 1ère page, toutes les images s'affichent, sur la 2éme page, ça débute bien à $_GET['debut'] et sur les suivantes aussi mais cela affiche toutes les images du répertoire.
Je ne sais pas comment arrêter la boucle à $nb_affichage_par_page et faire repartir la page suivante à $_GET['debut']

Si quelqu'un à une soluce, merci d'avance

2 réponses

Messages postés
87
Date d'inscription
vendredi 29 août 2003
Statut
Membre
Dernière intervention
19 mai 2006

for(
$i=$_GET['debut'];( $i <
( $nb_affichage_par_page +
$_GET['debut']
) ) && (
$i <
count( $tablo )
)
;$i++){







Je crois que c'est ca que tu veux :)




remplace juste ta boucle :)



ton $nb_total peut etre virer :) c'est ainsi beaucoup plus compréhensible :)




Si ma reponse vous convient, merci de l'accepter pour fermer le sujet
Messages postés
121
Date d'inscription
mercredi 27 octobre 2004
Statut
Membre
Dernière intervention
5 mars 2007

Merci beaucoup de ta réponse. Ca marche nickel !!