Tableau décroissant pour galerie avec pagination
jpp78120
Messages postés
9
Statut
Membre
-
jpp78120 Messages postés 9 Statut Membre -
jpp78120 Messages postés 9 Statut Membre -
Bonjour à tous,
Je souhaiterais pour ce code qui fonctionne très bien mais dans un ordre "bizard", afficher les vignettes, par ordre numérique décroissant, du plus grand au plus petit, le nom de mes vignettes (et images) se nommant par exemple 000.jpg, 001.jpg, 005.jpg, 013.jpg, 074.jpg, 125.jpg, etc . Le nom comportant tjrs 3 chiffres + une extension en jpg ou gif ou png mais pas de tri sur l'extension mais que sur le nom 001, 005, 013, 074, 125, etc...
Si quelqu'un peut m'aider, merci à tous, car je n'ai pas trouvé de solution.
<?php
$max_images = 36; // Nombre d'images à afficher
$break = 8;
$image_path = 'images/'; // Dossier d'images
$thumb_path = 'thumbs/'; // Dossier des miniatures
$list_ext = array('jpg', 'png','gif'); // Liste des extensions autorisées
$folder = opendir($image_path);
while($file = readdir($folder)){
$ext = explode('.', $file);
$ext = strtolower($ext[count($ext) - 1]);
if (in_array($ext,$list_ext)){
$list_images[] = $image_path . $file;
$list_thumbs[] = $thumb_path . $file;
}
}
$current_page = (!isset($_GET['page']) || empty($_GET['page'])) ? 1 : $_GET['page'];
$nb_pages = ceil(count($list_images) / $max_images);
// Affichage des images
echo'<table border="1"><tr>';
for($i = ($current_page - 1) * $max_images; $i < ($current_page - 1) * $max_images + $max_images; $i++) {
if($i < count($list_images)) {
if(file_exists($list_images[$i])) {
if($break == 8){
echo '<tr></tr>' ;
$break=0;
}
else{
$break++;
}
echo '<th><a href="'.$list_images[$i].'"><img src="'.$list_thumbs[$i].'"/></th></a>';
}
}
}
echo'</tr></table>'; {
}
// Affichage du pager
for ($i = 1 ; $i <= $nb_pages ; $i++) {
echo '<a href="'.$_SERVER['PHP_SELF'].'?page=' . $i . '">' . $i . '</a> ';
}
?>
Je souhaiterais pour ce code qui fonctionne très bien mais dans un ordre "bizard", afficher les vignettes, par ordre numérique décroissant, du plus grand au plus petit, le nom de mes vignettes (et images) se nommant par exemple 000.jpg, 001.jpg, 005.jpg, 013.jpg, 074.jpg, 125.jpg, etc . Le nom comportant tjrs 3 chiffres + une extension en jpg ou gif ou png mais pas de tri sur l'extension mais que sur le nom 001, 005, 013, 074, 125, etc...
Si quelqu'un peut m'aider, merci à tous, car je n'ai pas trouvé de solution.
<?php
$max_images = 36; // Nombre d'images à afficher
$break = 8;
$image_path = 'images/'; // Dossier d'images
$thumb_path = 'thumbs/'; // Dossier des miniatures
$list_ext = array('jpg', 'png','gif'); // Liste des extensions autorisées
$folder = opendir($image_path);
while($file = readdir($folder)){
$ext = explode('.', $file);
$ext = strtolower($ext[count($ext) - 1]);
if (in_array($ext,$list_ext)){
$list_images[] = $image_path . $file;
$list_thumbs[] = $thumb_path . $file;
}
}
$current_page = (!isset($_GET['page']) || empty($_GET['page'])) ? 1 : $_GET['page'];
$nb_pages = ceil(count($list_images) / $max_images);
// Affichage des images
echo'<table border="1"><tr>';
for($i = ($current_page - 1) * $max_images; $i < ($current_page - 1) * $max_images + $max_images; $i++) {
if($i < count($list_images)) {
if(file_exists($list_images[$i])) {
if($break == 8){
echo '<tr></tr>' ;
$break=0;
}
else{
$break++;
}
echo '<th><a href="'.$list_images[$i].'"><img src="'.$list_thumbs[$i].'"/></th></a>';
}
}
}
echo'</tr></table>'; {
}
// Affichage du pager
for ($i = 1 ; $i <= $nb_pages ; $i++) {
echo '<a href="'.$_SERVER['PHP_SELF'].'?page=' . $i . '">' . $i . '</a> ';
}
?>
A voir également:
- Tableau décroissant pour galerie avec pagination
- Comment trier un tableau excel par ordre décroissant - Guide
- Tableau word - Guide
- Tableau ascii - Guide
- Galerie photo en ligne gratuite - Guide
- Tableau croisé dynamique - Guide
6 réponses
Bonjour gign44,
J'ai essayé :
$list_images[] = arsort($image_path) . $file;
$list_thumbs[] = arsort($thumb_path) . $file;
mais je pense avoir mal placé cette instruction dans le programme.
Si cette fonction est correcte, où dois-je la placer dans le programme,
n'étant qu'un néophyte en php.
Merci de ton aide.
J'ai essayé :
$list_images[] = arsort($image_path) . $file;
$list_thumbs[] = arsort($thumb_path) . $file;
mais je pense avoir mal placé cette instruction dans le programme.
Si cette fonction est correcte, où dois-je la placer dans le programme,
n'étant qu'un néophyte en php.
Merci de ton aide.
Bonjour,
Tu dois directement utiliser cette fonction sur ton tableau. Laisse donc les lignes suivantes puis après cela tu effectues le tri :
Cordialement
Tu dois directement utiliser cette fonction sur ton tableau. Laisse donc les lignes suivantes puis après cela tu effectues le tri :
$list_images[] = $image_path . $file;
$list_thumbs[] = $thumb_path . $file;
$list_images=arsort($list_images);
$list_thumbs=arsort($list_thumbs);
Cordialement
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
toujours en désordre !
Array ( [0] => preview/093.jpg ) 11Array ( [0] => preview/089.jpg ) 11Array ( [0] => preview/038.jpg ) 11Array ( [0] => preview/076.jpg ) 11Array ( [0] => preview/000.png ) 11Array ( [0] => preview/016.jpg ) 11Array ( [0] => preview/078.jpg ) 11Array ( [0] => preview/057.jpg ) 11Array ( [0] => preview/058.jpg ) 11Array ( [0] => preview/086.jpg ) 11Array ( [0] => preview/111.jpg ) 11Array ( [0] => preview/123.jpg ) 11Array ( [0] => preview/140.jpg ) 11Array ( [0] => preview/080.jpg ) 11Array ( [0] => preview/062.jpg ) 11Array ( [0] => preview/063.jpg ) 11Array ( [0] => preview/085.jpg ) 11Array ( [0] => preview/138.jpg ) 11Array ( [0] => preview/075.jpg ) 11Array ( [0] => preview/134.jpg ) 11Array ( [0] => preview/068.jpg ) 11Array ( [0] => preview/081.jpg ) 11Array ( [0] => preview/053.jpg ) 11Array ( [0] => preview/046.jpg ) 11Array ( [0] => preview/333.png ) 11Array ( [0] => preview/012.jpg ) 11Array ( [0] => preview/137.jpg ) 11Array ( [0] => preview/031.jpg ) 11Array ( [0] => preview/090.jpg ) 11Array ( [0] => preview/109.jpg ) 11Array ( [0] => preview/091.jpg ) 11Array ( [0] => preview/135.jpg ) 11Array ( [0] => preview/044.jpg ) 11Array ( [0] => preview/055.jpg ) 11Array ( [0] => preview/010.jpg ) 11Array ( [0] => preview/098.jpg ) 11Array ( [0] => preview/130.jpg ) 11Array ( [0] => preview/049.jpg ) 11Array ( [0] => preview/026.jpg ) 11Array ( [0] => preview/084.jpg ) 11Array ( [0] => preview/128.jpg ) 11Array ( [0] => preview/036.jpg ) 11Array ( [0] => preview/087.jpg ) 11Array ( [0] => preview/007.jpg ) 11Array ( [0] => preview/066.jpg ) 11Array ( [0] => preview/028.jpg ) 11Array ( [0] => preview/119.jpg ) 11Array ( [0] => preview/113.jpg ) 11Array ( [0] => preview/040.jpg ) 11Array ( [0] => preview/035.jpg ) 11Array ( [0] => preview/045.jpg ) 11Array ( [0] => preview/136.jpg ) 11Array ( [0] => preview/106.jpg ) 11Array ( [0] => preview/056.jpg ) 11Array ( [0] => preview/001.jpg ) 11Array ( [0] => preview/126.jpg ) 11Array ( [0] => preview/009.jpg ) 11Array ( [0] => preview/002.jpg ) 11Array ( [0] => preview/006.jpg ) 11Array ( [0] => preview/120.jpg ) 11Array ( [0] => preview/017.jpg ) 11Array ( [0] => preview/023.jpg ) 11Array ( [0] => preview/117.jpg ) 11Array ( [0] => preview/143.jpg ) 11Array ( [0] => preview/048.jpg ) 11Array ( [0] => preview/067.jpg ) 11Array ( [0] => preview/039.jpg ) 11Array ( [0] => preview/061.jpg ) 11Array ( [0] => preview/115.jpg ) 11Array ( [0] => preview/094.jpg ) 11Array ( [0] => preview/033.jpg ) 11Array ( [0] => preview/245.gif ) 11Array ( [0] => preview/014.jpg ) 11Array ( [0] => preview/030.jpg ) 11Array ( [0] => preview/021.jpg )
et plus de vignettes qui apparait
Array ( [0] => preview/093.jpg ) 11Array ( [0] => preview/089.jpg ) 11Array ( [0] => preview/038.jpg ) 11Array ( [0] => preview/076.jpg ) 11Array ( [0] => preview/000.png ) 11Array ( [0] => preview/016.jpg ) 11Array ( [0] => preview/078.jpg ) 11Array ( [0] => preview/057.jpg ) 11Array ( [0] => preview/058.jpg ) 11Array ( [0] => preview/086.jpg ) 11Array ( [0] => preview/111.jpg ) 11Array ( [0] => preview/123.jpg ) 11Array ( [0] => preview/140.jpg ) 11Array ( [0] => preview/080.jpg ) 11Array ( [0] => preview/062.jpg ) 11Array ( [0] => preview/063.jpg ) 11Array ( [0] => preview/085.jpg ) 11Array ( [0] => preview/138.jpg ) 11Array ( [0] => preview/075.jpg ) 11Array ( [0] => preview/134.jpg ) 11Array ( [0] => preview/068.jpg ) 11Array ( [0] => preview/081.jpg ) 11Array ( [0] => preview/053.jpg ) 11Array ( [0] => preview/046.jpg ) 11Array ( [0] => preview/333.png ) 11Array ( [0] => preview/012.jpg ) 11Array ( [0] => preview/137.jpg ) 11Array ( [0] => preview/031.jpg ) 11Array ( [0] => preview/090.jpg ) 11Array ( [0] => preview/109.jpg ) 11Array ( [0] => preview/091.jpg ) 11Array ( [0] => preview/135.jpg ) 11Array ( [0] => preview/044.jpg ) 11Array ( [0] => preview/055.jpg ) 11Array ( [0] => preview/010.jpg ) 11Array ( [0] => preview/098.jpg ) 11Array ( [0] => preview/130.jpg ) 11Array ( [0] => preview/049.jpg ) 11Array ( [0] => preview/026.jpg ) 11Array ( [0] => preview/084.jpg ) 11Array ( [0] => preview/128.jpg ) 11Array ( [0] => preview/036.jpg ) 11Array ( [0] => preview/087.jpg ) 11Array ( [0] => preview/007.jpg ) 11Array ( [0] => preview/066.jpg ) 11Array ( [0] => preview/028.jpg ) 11Array ( [0] => preview/119.jpg ) 11Array ( [0] => preview/113.jpg ) 11Array ( [0] => preview/040.jpg ) 11Array ( [0] => preview/035.jpg ) 11Array ( [0] => preview/045.jpg ) 11Array ( [0] => preview/136.jpg ) 11Array ( [0] => preview/106.jpg ) 11Array ( [0] => preview/056.jpg ) 11Array ( [0] => preview/001.jpg ) 11Array ( [0] => preview/126.jpg ) 11Array ( [0] => preview/009.jpg ) 11Array ( [0] => preview/002.jpg ) 11Array ( [0] => preview/006.jpg ) 11Array ( [0] => preview/120.jpg ) 11Array ( [0] => preview/017.jpg ) 11Array ( [0] => preview/023.jpg ) 11Array ( [0] => preview/117.jpg ) 11Array ( [0] => preview/143.jpg ) 11Array ( [0] => preview/048.jpg ) 11Array ( [0] => preview/067.jpg ) 11Array ( [0] => preview/039.jpg ) 11Array ( [0] => preview/061.jpg ) 11Array ( [0] => preview/115.jpg ) 11Array ( [0] => preview/094.jpg ) 11Array ( [0] => preview/033.jpg ) 11Array ( [0] => preview/245.gif ) 11Array ( [0] => preview/014.jpg ) 11Array ( [0] => preview/030.jpg ) 11Array ( [0] => preview/021.jpg )
et plus de vignettes qui apparait
Ce programme fonctionne bien sauf dans un affichage bizard, pas de tri, et avec 1 seule clé.
Tu peux voir ce que ça donne sur http://www.darknebulae.fr/test/test_gal_2-0.php
Ce programme est déjà issu de ce site, voir :
https://forums.commentcamarche.net/forum/affich-21212946-faire-un-tableau-pour-galerie-avec-pagination
Si tu ne peux pas m'aider davantage, merci quand même.
Tu peux voir ce que ça donne sur http://www.darknebulae.fr/test/test_gal_2-0.php
Ce programme est déjà issu de ce site, voir :
https://forums.commentcamarche.net/forum/affich-21212946-faire-un-tableau-pour-galerie-avec-pagination
Si tu ne peux pas m'aider davantage, merci quand même.