Bonjour,
Je souhaite afficher sur un site le contenu d'un dossier FTP, une page affichant 20 dossiers. Chaque dossier contient des fichiers pdf, un par mois, avec un nom commençant par Num.x (x = le n°). Chaque page devrait afficher une pagination.
Je ne suis pas programmeuse PHP, j'ai quelques bases me permettant de modifier un script dans une certaine mesure. Au-delà, je cherche sur le Net. Et donc j'ai trouvé ici un script me permettant d'afficher les dossiers. Il me reste à le "mettre en forme" pour afficher les dossiers dans un grid.

Maintenant, je cherche comment faire pour n'afficher que 20 dossiers par page et comment ajouter une pagination : << Précédent 1 2 3 ... 6 7 Suivant >>. Précédent et Suivant doivent figurer aussi sur la première et la dernière page (exigence du propriétaire du site)

A la base, j'ai installé un Wordpress, trouvé un plugin et c'est nickel. Mais ce serait plus "propre" et surtout plus léger avec juste un script. Est-ce que quelqu'un pourrait me donner des pistes pour limiter par page et pour la pagination ? Et pour afficher dossiers et fichiers par ordre alphabétique.

Voici le code que j'ai récupéré (le dossier parent s'appelle library)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
<?php 
function dir_scan_html($dir,$niveau=0,$id=0)
{
$html=null;
$html_repertoires=null;
$html_fichiers=null;
	if ($handle = opendir($dir)) {
		while (false !== ($entry = readdir($handle))) {
			$id++;
			if(is_dir($dir."/".$entry))
			{
				if($entry!='..' && $entry!='.')
				{
					 if( 
						($dir."/".$entry != './library')
					 )	
					 {
						 $html_repertoires .= str_repeat("\t",$niveau)."<div id='div_".$id."' >";
						 $html_repertoires .= str_repeat("<img src='images/vide.png' border='0'>",$niveau);
						 $html_repertoires .= "<img src='images/folder.png' border='0'>";
						 $html_repertoires .= "".$entry."";
						 $html_repertoires .= "";
						 $html_repertoires .= "";
						 $html_repertoires .= str_repeat("\t",$niveau)."</div mid='div_".$id."'>\n";
							//echo ".".$entry."<br>";
						$niveau++; 
						 $html_repertoires .= str_repeat("\t",$niveau)."<div id='sub_".$id."' style='border:solid 0px #FF0000;' >\n";
						 $html_repertoires .= dir_scan_html($dir."/".$entry,$niveau,$id);
						 $html_repertoires .= str_repeat("\t",$niveau)."</div mid='sub_".$id."'>\n";
						 $niveau--;
					}
				}				
			}else{
				 if( 
					(substr ( $entry , 0, 1 ) != '.')
					&& ($dir."/".$entry != './index.php')
				 )	
				 {
					 $html_fichiers .= str_repeat("\t",$niveau)."<div id='fil_".$id."'>";
					 $html_fichiers .= str_repeat("<img src='images/vide.png' border='0'>",$niveau);
					 $html_fichiers .= "<img src='images/file_extension_txt.png' border='0'>";
					 $html_fichiers .= "<a href='".$dir."/".$entry."' target='_blank'>".$entry."</a>";
					 $html_fichiers .= "</div>\n";
				 }
			}
		}
		closedir($handle);
		$html.=$html_repertoires;
		$html.=$html_fichiers;
		return $html;
	}    
}
 
 
$html = dir_scan_html(".");
echo $html;
?>
Cela m'affiche bien
Année 1840
Num.1 - janv. 1840.pdf
etc..

Année 1841
Num.13 - janv. 1841.pdf
etc...

Mille mercis d'avance !