8797 sujets

Développement web côté serveur, CMS

Bonjour,

voila, j'ai un souci (en même temps je serai pas le sinon).
Je souhaite faire une galerie photo, pour cela j'utilise du php qui me scanne un répertoire nommé "images" et qui affiche sous forme de lien le nom de chaque sous dossiers. Voila la page, ca sera plus simple: http://photoscarnivores.free.fr/Heliamphora/accueil_heliamphora.php


Le problème est que je voudrais que les liens s'affichent par ordre alphabétique et non pas au hasard. Y'a un moyen de faire ca ?
J'ai contacté la personne qui avait fait le script, elle m'a dit qu'on pouvait le faire avec en utilisant un array....ca vous aide ?

voila le code php qui correspond:


 
<?php
function filelist ($startdir="./", $searchSubdirs=1, $directoriesonly=0, $maxlevel="all", $level=1) {
    $ignoredDirectory[] = ".";
    $ignoredDirectory[] = "..";
    $ignoredDirectory[] = "_vti_pvt";
    $ignoredDirectory[] = "_vti_cnf";
    $ignoredDirectory[] = "_private";
    global $directorylist; 
    if (is_dir($startdir)) {
        if ($dh = opendir($startdir)) {
            while (($file = readdir($dh)) !== false) {
                if (!(array_search($file,$ignoredDirectory) > -1)) {
                 if (filetype($startdir . $file) == "dir") {
                      $directorylist[$startdir . $file]['dir'] = 1;
                      $directorylist[$startdir . $file]['name'] = $file;
                   }}}
           closedir($dh);
}}
return($directorylist);
}
$files = filelist("images/",1,1); // nous demandons de scanner le repertoire images/ les valeurs qui suivent permetent de preciser si on veut compter les sous dossiers, enfin bref, on met tout a 1 ici
foreach ($files as $list) {
$file2 = str_replace("_", " ", $list['name']);
echo "<a href=?page=images/" . $list['name'] . "/index>" . $file2 ."</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"; // on affiche la liste sous forme de lien
}?>




PS: il s'agit d'un code que j'ai téléchargé et un peu modifié a partir d'un site de php. Je n'ai pas vraiment de connaissance en php...

Merci d'avance

Foyout
Modifié par foyout (13 Jul 2008 - 23:02)
Modérateur
Salut et bienvenue sur le forum,

SVP, pense à mettre le code entre les balise que tu trouves dans le panneaux de mise en forme en dessous des smileys.

Sinon pour ton soucis, regarde ceci. Tu auras suremement la réponse.

++
Je pense pouvoir m'en sortir pour afficher le array par ordre alphabétique. Le problème c'est que je ne sais pas comment faire pour mettre le contenu de mon répertoire 'image' dans l'array...
Modérateur
Salut,

Je pense que tu vas avoir besoin de ces fonctions :

* array_push()
* opendir()
* readdir()
* closedir()

Sinon, si tu préfères une approche objet :
* dir()

EDIT : Le array_push() n'est pas obligatoire mais bien utile. Cela dépend comment tu vas coder Smiley cligne

++
Modifié par Nolem (13 Jul 2008 - 17:11)