Bonjour, je me permet de vous demander un peu d'aide, car je suis bloqué par un truc.
Dans un admin, avec une boucle while (avec opendir, readdir) j'affiche toutes les images dans un dossier upload.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | <div class="bibliotheque-img"> <?php $nb_fichier = 0; echo '<ul>'; if($dossier = opendir('../../upload')) { // fonction pour ouvrir un dossier while(false !== ($fichier = readdir($dossier))) { // si pas d'erreur ouvrir les fichiers if($fichier != '.' && $fichier != '..' && $fichier != 'index.php') { // pour afficher que les img ?> <form onSubmit="return(confirm('Etes vous sur de supprimer définitivement cette image ?'));" id="suppr-bibliotheque" method="post" action="traitement_bibliotheque.php"><li><img src="../../upload/<?php echo $fichier; ?>" height="auto" width="40px"> <?php $nb_fichier++; echo '<input type="hidden" name="nom_fichier" value="'.$fichier.'">'; echo '<a href="../../upload/'.$fichier.'">'.$fichier.'</a><input type="submit" name="suppr" value="Supprimer"></li></form>'; } } // END boucle while echo '</ul>'; echo '<p class="nb-fichiers">Il y a <strong>' . $nb_fichier .'</strong> fichiers dans le dossier d\'upload</p>'; closedir($dossier); } else { echo 'Le dossier n\' a pas pu être ouvert'; } ?> </div> |
Je souhaite faire une pagination, (je sais faire des paginations avec des requêtes SQL, mais la je ne vois pas comment).
Pour le moment j'en suis ici:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | <?php $Images = $nb_fichier; // $nb_fichier : nombre de fichiers dans boucle while $parPage = 10; $nbPages = ceil($Images/$parPage); if(isset($_GET['p']) && $_GET['p']>0 && $_GET['p']<=$nbPages) { $PageEnCours = $_GET['p']; } else { $PageEnCours = 1; } ?> // afficher la pagination: <span class="span-pagination"> <?php $PremPage = $PageEnCours -4; // limiter le début if($PremPage>=1) { $PageDepart = $PremPage; } else { $PageDepart = 1; } $DerPage = $PageEnCours +4; // limiter la fin if($DerPage<=$nbPages ) { $PageFin = $DerPage; } else { $PageFin = $nbPages; } for($i=$PageDepart; $i<=$PageFin; $i++) { if($i == $PageEnCours) { ?> <span class="pagination-active"><?php echo $i ?></span> <?php } else { ?> <a class="liens-pagination" href="?p=<?php echo $i ?>"><?php echo $i ?></a> <?php } } ?> </span> |
Et je suis un peu perdu. Par exemple si j'ai 30 images, ma pagination affiche bien 1 - 2 - 3, mais ça ne se limite pas à 10 par pages, toute les images s'affichent les unes en dessous des autres.
Est-ce possible de m'aider un peu SVP? Merci beaucoup.
+0
-0