Listing des fichiers d'un repertoire lettre par lettre

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 368 fois - Téléchargée 30 fois

Contenu du snippet

A la base j'ai concu ce script car je cherchai a lister toutes les images d'un repertoire puis a les afficher lettre par lettre grace a un menu.

j'avoue ke l'esthetique a été negligé mais il y a l'essentiel ;)
a vous de lui donner le style que vous desirez .

vous aurrez juste a rajouter un repertoire pour mettre les fichiers a lister
et a modifier la variable $ repertoire en fonction du nom de celui ci

certains diront sans doute que c'est nul mais j'ai cherché un code de ce genre sans rien trouver donc voile je poste le mien .

Source / Exemple :


<html>
<head>
<title>listing des fichiers d'un repertoire</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<div align="center">
<?php
// ligne a modifier en fonction du repertoire a afficher
$repertoire = "jaquettes";
//---------------------------------------------
$lettre = $_GET['lettre'];
$chiffre = $_GET['chiffre'];
$r = opendir("$repertoire");
$a = "97"; //caractere a en ascii

// menu ------------------------------------------------------
echo "<a href=\"".$_SERVER['PHP_SELF']."?chiffre=1\">0-9</a> ";
while ( $a <= 121 )
{
echo "<a href=\"".$_SERVER['PHP_SELF']."?lettre=".chr($a)."\">".chr($a-32)."</a> ";
$a = $a+1;
}
echo "<br><br>";
//----------------------------------------------------------

// listing des fichiers par lettre
echo ("liste des fichiers dans ce repertoire :<br>");

while ($fichier = readdir($r))
{
// si c'est un chiffre
if ( $chiffre == "1" )
{
if (is_numeric ( strtolower($fichier{0} ) )) 
{
echo " <a href=\"$repertoire/$fichier\">$fichier</a><br>";
}
}
// si c'est une lettre
if ( $lettre != "" )
{
if (strtolower($fichier{0}) == $lettre)
{
$name = ucfirst("$fichier");
echo " <a href=\"$repertoire/$fichier\">$name</a><br>";
}
}
}
//on ferme le repertoire
closedir($r);
?>
</div>
</body>
</html>

Conclusion :


il n'y normalement aucun bug enfin si vous voyez une amélioration faites moi le savoir.

merci

A voir également

Ajouter un commentaire

Commentaires

cs_PaTaTe
Messages postés
2081
Date d'inscription
mercredi 21 août 2002
Statut
Contributeur
Dernière intervention
16 mars 2020
2
Personnellement avec les 2 méthodes je n'ai pas le Z qui s'affiche dans la liste des lettres. Et puis comme XMAG le spécifie, ça serait bien de pouvoir cliquer que sur les lettres qui ont un contenu (les retirer non je préfèrerais les laisser) ... Si quelqu'un peut m'aider pour tout ça, ça serait sympa ^^
cs_xmag
Messages postés
23
Date d'inscription
mercredi 23 juillet 2003
Statut
Membre
Dernière intervention
11 juin 2007

Petite idée pour perfectionner le code : ne pas afficher les lettres où il n'y a pas de fichier ;-)
vincseize
Messages postés
114
Date d'inscription
mardi 25 février 2003
Statut
Membre
Dernière intervention
28 mars 2010

petite correction, erreur de frappe je pense de la part de
ImortalPC le 20/03/2005 17:43:55:

remplacer: if(IsSet($_GET['lettre'])){$chiffre = $_GET['chiffre'];}else{$chiffre = NULL;}

par: if(IsSet($_GET['chiffre'])){$chiffre = $_GET['chiffre'];}else{$chiffre = NULL;}

za + les brutes
Ze_doctor
Messages postés
6
Date d'inscription
jeudi 19 février 2004
Statut
Membre
Dernière intervention
7 septembre 2005

ImmortalPC, j ai utilisé ton code, la page s affiche sans problème sauf que ca ne liste rien du tout :/
Tukkkko
Messages postés
29
Date d'inscription
lundi 22 mars 2004
Statut
Membre
Dernière intervention
29 janvier 2007

C'est une autre façon de faire...

De toutes façons il y en a encore plein d'autres...

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.