lister les fichiers d'un dossier

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 : lister les fichiers d'un dossier

Re: lister les fichiers d'un dossier

par db2p » 20 juil. 2018, 08:18

bonjour,

tout fonctionne enfin presque
c'est un truc simple ce sont des pages php qui gère mes livres sur mon nas synology http://db2p.synology.me/livres/
ça recherche des images dans le dossier images et en fonction du nom du fichier (titre_prenomauteur_nomauteur.jpg) extrait le titre et l'auteur et affiche celles-ci
le problème restant est que ça affiche bien les images dans le dossier images/ mais n'arrive pas a afficher celles du dossier vignettes/ (plus petites images pour gagner en rapidité d'affichage) qui se trouvent au même niveau ??????????
enfin comme j'ai dit il y a une synchro (CloudSync sur mon nas) sur mon google drive en bidirectionnel
normalement que je fasse des modifs sur l'un ou l'autre ca modifie en conséquence l'un ou l'autre
le problème qu'il y a en fait est que si je modifie sur mon nas (fichiers dans un web server) ça synchronise (CloudSync) bien sur mon drive
mais l'inverse n'est pas réellement la même chose car si je modifie les fichiers sur le drive, au niveau du nas (web server) ca le fait pas comme il faut
bref, faudra que je creuse encore...et plutot a voir sur le forum dédié au nas syno
merci en tout cas

Re: lister les fichiers d'un dossier

par @rthur » 19 juil. 2018, 03:24

sur ma page web de mon nas impossible de les afficher ????????????????????????
Il va falloir que tu fasses du debugage de ton côté, vérifies ma source de la page HTML générée, vérifie le contenu des variables avec var_dump(), vérifies les messages d'erreur dans tes logs serveur... car là, juste avec l'info "ça marche pas" on ne va pas pouvoir beaucoup t'aider

Re: lister les fichiers d'un dossier

par db2p » 18 juil. 2018, 20:28

bon ben j'ai trouve ce qui cloche
c'est la fonction
if (is_file($fichier)){//
si je l'enleve ca fonctionne...

mais il reste un probleme que là je ne m'explique pas hormis la différence de serveur

j'ai donc exactement les memes fichiers memes dossiers sur ma page free et sur mon nas synology
je veux donc afficher les images contenues dans le dossier images cela focntionne
maintenant dans le dossier vignettes ce sont les memes images mais plus petites pour un affichage plus rapide
je donne donc "vignettes/" comme nom de dossier et sur la page free pas de probleme ca les affichent (j'ai verifie dans le code source de la page) mais sur ma page web de mon nas impossible de les afficher ????????????????????????

Re: lister les fichiers d'un dossier

par db2p » 18 juil. 2018, 13:33

oui le ; est bien présent après $fichier

j'ai beau changer la variable $dossier dans tous les sens
../livres/images/
./images/
images
/images/
etc...


rien n'y fait

je précise que c'est un sur un site situé sur un nas synology avec synchro cloudSync sur gDrive
donc je fais les modifs sur mon drive ca le modifie sur mon nas et inversement
comme ca fonctionne pas je me suis dit j'ai mis ça sur mon site de chez free
db2p.free.fr/livres/
idem
le pluc con c'est que si je mets les images sur la racine donc dans le dossier livres la ca fonctionne ??????????

Re: lister les fichiers d'un dossier

par or 1 » 18 juil. 2018, 13:22

tout le code est présent ?
car il manque un ;
cela ne fait rien de la variable $fichiers
la fonction ne retourne rien explicitement dans le second cas.

Re: lister les fichiers d'un dossier

par @rthur » 18 juil. 2018, 09:45

Pourquoi mets-tu un "@" devant ta fonction opendir() ? L'arobace c'est pour masquer les messages d'erreur donc forcément difficile de debuguer avec ça.

Et sinon mon conseil serait d'utiliser plutôt la fonction glob() dans un foreach(), c'est + efficace et très facile à utiliser.
Tu as un exmeple tout fait dans la doc:
https://php.net/glob

lister les fichiers d'un dossier

par db2p » 18 juil. 2018, 08:54

bonjour
j'ai déjà fait des choses en php mais là je vois plus du tout ou est le probleme et je me prends la tete et j('en ais marre pourtant sur un truc aussi basique
je veux simplement afficher dans ma page web les images se trouvant dans un dossier
voila l'organisation des dossiers :
Image
dossier livres avec page index.php qui doit afficher les images du sous-dossier images

voila mon code php pour mettre les noms des fichiers dans un tableau:
$dossier = "images/";
$fichier = "";
$x = 0;
if (is_dir($dossier)) { 
  if ($dir = @opendir($dossier)){
    while (($fichier = readdir($dir)) !== false){
      if (is_file($fichier)){//
         if (extension($fichier)){
            $fichiers[$x] = $fichier
            $x++;
        }
      }
    } 
    closedir($dir);
  }
}

function extension($fich){ // BEGIN function extension
    $extension = strtolower(pathinfo($fich, PATHINFO_EXTENSION));
       if ($extension == "jpg" || $extension == "jpeg" || $extension == "gif" || $extension == "png"){
        return true;
       }
} 
pour la variable $dossier j'ai essayé toutes les combinaisons possibles
./images
../livres/images/
etc. etc.

mais le résultat est toujours le même aucun fichier trouvé
merci de votre aide