[RESOLU] afficher contenu d'un dossier sur x pages

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] afficher contenu d'un dossier sur x pages

Re: afficher contenu d'un dossier sur x pages

par sax76 » 26 sept. 2014, 14:16

merciiiiiiiiiiiiiiiiii
ca marche au top :)

super merci pour l'aide :)

Re: afficher contenu d'un dossier sur x pages

par tesmet » 26 sept. 2014, 01:57

renseigner $page et $dir_nom dans l'action devrait suffire
echo '<form method="POST" action="?page=',$page ,'&dir_nom=',$dir_nom ,'">', PHP_EOL;

Re: afficher contenu d'un dossier sur x pages

par sax76 » 25 sept. 2014, 23:05

derniere question :D

j'utilise un bouton <form> pour modifier des fichiers
ca me permet de déplacer les images d'un dossier a un autre juste en cliquant sur un bouton

sur la première page ça marche :) puisque le bouton a le nom de page

Code : Tout sélectionner

<form method="POST" action="afficheee">
sur la page 1 ca marche car je suis bien sur la page afficheee.php
mais des que je change de page .................. je me retrouve avec ce lien dans ma barre /afficheee?page=2&dir_nom=pochettes pour la page 2 /afficheee?page=3&dir_nom=pochettes pour la 3 etc.............
mais quand je clique sur mon bouton il se passe rien car il recharge la page 1 donc afficheee.php

comment faire pour que le ACTION de mon bouton suive le deplacement dans les pages
si je suis sur la page /afficheee?page=2&dir_nom=pochettes et que je clique sur mon bouton je voudrais afficher toujours la page /afficheee?page=2&dir_nom=pochettes

#-o #-o #-o #-o #-o

Re: afficher contenu d'un dossier sur x pages

par sax76 » 25 sept. 2014, 22:29

Oui je viens de le voir ...............
je sort du lit pas bien reveillé :)

Merciiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
ça ou la picole, pas terrible avec le code !! :lol: :lol:

rooooooooooooooooooooooooooooo

nan meme pas :) je sortais du lit pas les yeux en face des trous :)

Re: afficher contenu d'un dossier sur x pages

par arnaud69 » 25 sept. 2014, 10:53

Oui je viens de le voir ...............
je sort du lit pas bien reveillé :)

Merciiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
ça ou la picole, pas terrible avec le code !! :lol: :lol:

Re: afficher contenu d'un dossier sur x pages

par sax76 » 25 sept. 2014, 10:38

Oui je viens de le voir ...............
je sort du lit pas bien reveillé :)

Merciiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii

Re: afficher contenu d'un dossier sur x pages

par arnaud69 » 25 sept. 2014, 10:35

Cool ca marche , merci ......................
possible de les afficher les une en dessous des autres et non coté a cote ?
Ajoute un br à la fin de la ligne d'affichage de l'image :

Code : Tout sélectionner

echo '<img src="', $lien, '" width="50" height="50" border="0"/><br>', PHP_EOL;

Re: afficher contenu d'un dossier sur x pages

par sax76 » 25 sept. 2014, 10:19

Cool ca marche , merci ......................
possible de les afficher les une en dessous des autres et non coté a cote ?

Re: afficher contenu d'un dossier sur x pages

par tesmet » 25 sept. 2014, 04:14

$items = 50; // nombre d'items maximum par page
$dir_nom = 'img'; // répertoire de départ

$page = isset($_GET['page']) ? $_GET['page'] : 1; // la page demandée
$dir_nom = isset($_GET['dir_nom']) ? $_GET['dir_nom'] : $dir_nom; // le rép.

$dir = opendir($dir_nom) or die();
$fichier= array();
$dossier= array();
while($element = readdir($dir)) {
  if($element != '.' && $element != '..' && $element != '.htaccess') {
    if (!is_dir($dir_nom.'/'.$element)) {$fichier[] = $dir_nom.'/'.$element;}
    else {$dossier[] = $dir_nom.'/'.$element;}
  }
}
closedir($dir);

echo '<menu>Répertoires actuels';
$root = '';
foreach(explode('/', $dir_nom) as $lien) {
  $root .= $lien;
  echo '<li><a href="?page=1&dir_nom=', $root, '">', $root, '</a> ', PHP_EOL;
  $root .='/';
}
echo '</menu>';

if(count($dossier)) {
  echo '<menu>sous Répertoires';
  foreach($dossier as $lien) {
    echo '<li><a href="?page=1&dir_nom=', $lien, '">', $lien, '</a>', PHP_EOL;
  }
  echo '</menu>';
}

$pages = ceil(count($fichier) / $items); // calculer le nombre de pages nécessaires
if($pages) {
  foreach(range(1, $pages) as $lien) {
    echo ' <a href="?page=', $lien, '&dir_nom=', $dir_nom, '">', $lien, '</a> ', PHP_EOL;
  }
  echo '<br /><br />';
}

$fichier = array_slice($fichier, ($page-1) * $items, $items);
foreach($fichier as $lien) {
  echo '<img src="', $lien, '" width="50" height="50" border="0"/>', PHP_EOL;
}

afficher contenu d'un dossier sur x pages

par sax76 » 24 sept. 2014, 23:54

bonjour à tous ,

voila j'utilise ce code pour lister le contenu d'un dossier
<?php
$dir_nom = 'img'; 
$dir = opendir($dir_nom) or die(); 
$fichier= array(); 
$dossier= array();

while($element = readdir($dir)) {
	if($element != '.' && $element != '..' && $element != '.htaccess') {
		if (!is_dir($dir_nom.'/'.$element)) {$fichier[] = $element;}
		else {$dossier[] = $element;}
	}
}

closedir($dir);

if(!empty($dossier)) {
       sort($dossier); 
	       foreach($dossier as $lien){
			?>   <img src="<?php 	echo $dir_nom."/".$lien  ;	 ?>" width="50" height="50" border="0"/><br /><?php
			
		}
}

if(!empty($fichier)){
	sort($fichier); 
		foreach($fichier as $lien) {
			?>   <img src="<?php 	echo $dir_nom."/".$lien  ;	?>" width="50" height="50" border="0"/><br /><?php
		}
 }

?>
ça m'affiche les images les une en dessous des autres
cette partie fonctionne sans soucis , mais sur un dossier avec 50 fichiers par ex
la mon dossier contient plus de 2000 images et forcement ca bloque meme avec du debit le navigateur sature

comment faire pour afficher par 50 images par page
et avoir en dessous un bouton "retour" & "suivant" pour passer aux 50 suivant etc................ ou un systeme "page 1 2 3 4 5 6 .................."

#-o #-o #-o #-o

cdt Pascal