LISTAGE RÉPERTOIRES/SOUS RÉPERTOIRES + FICHIERS

vedder1896 Messages postés 10 Date d'inscription mercredi 2 avril 2003 Statut Membre Dernière intervention 19 avril 2004 - 15 avril 2004 à 00:17
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 - 6 juin 2005 à 19:53
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/21936-listage-repertoires-sous-repertoires-fichiers

Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
6 juin 2005 à 19:53
Hé bien si tu veux décaler les sous-répertoires, laisse les tableaux comme ils sont et décale ceux des sous-répertoires!?
footixgh Messages postés 1 Date d'inscription vendredi 17 octobre 2003 Statut Membre Dernière intervention 5 juin 2005
5 juin 2005 à 20:06
Bonjour, Avec votre système, un nouveau tableau est créé dans un tableau pour les sous-dossiers par exemple.
J'ai adapté votre code pour que tout s'affiche dans un seul tableau afin d'en faire un menu automatique.
Mais j'aimerais décaler les sous répertoires. Comment faire? Comment savoir si ce qui va être écris est un sous répertoire ou un répertoire?

Merciiiii
neouf Messages postés 1 Date d'inscription samedi 11 novembre 2000 Statut Membre Dernière intervention 17 mars 2005
17 mars 2005 à 10:53
if (is_dir($path.'/'.$file) && $path.'/'.$file != "." && $path.'/'.$file != "..")

avec ca , un meilleur fonctionnement est visible avec des chemins unix,
et voilou :)
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
22 févr. 2005 à 23:57
Hum ça marchera mieux si vous sortez la fonction de la boucle lol
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
20 févr. 2005 à 15:40
Joli code!
J'ai ajouté ceci pour que les fichiers soient aussi des liens (la fonction marche avec les espaces et les accents utilisés en français principalement, pour le reste faîtes des recherches :^) :

A un moment vous allez remplacer:

//liste des fichiers + date modif
$this->listFiles[$tmp2]="<td>".$file."</td><td>".date("d/m/y H:i",fileatime($fullpath."/".$file))."</td>";


Par:

//liste des fichiers + date modif
function accent($mot)
{
for($i=0;$i<strlen($mot);$i++)
{
$car=substr($mot,$i,1);
$val=ord($car);
if ($val==192){$car='%c0';}
if ($val==194){$car='%c2';}
if ($val==199){$car='%c7';}
if ($val==212){$car='%d4';}
if ($val>=224){$car='%e0';}
if ($val>=226){$car='%e2';}
if ($val==231){$car='%e7';}
if ($val==232){$car='%e8';}
if ($val==233){$car='%e9';}
if ($val==234){$car='%ea';}
if ($val==235){$car='%eb';}
if ($val==238){$car='%ee';}
if ($val==239){$car='%ef';}
if ($val==241){$car='%f1';}
if ($val==244){$car='%f4';}
if ($val==246){$car='%f6';}
if ($val==249){$car='%f9';}
if ($val==251){$car='%fb';}
if ($val==252){$car='%fc';}
$retour.=$car;
}
return($retour);
}

$flpth = accent($fullpath);
$faile = accent($file);
$this->listFiles[$tmp2]='<td>['.$flpth.'/'.$faile.' '.$file.']<td>';


Et voilà, ça doit marcher!!
Euhh par contre, pour mon site, j'ai supprimé l'option qui montre la taille des fichiers et j'ai la flemme de la remettre dans mon code, mais en respectant la ponctuation vous n'aurez pas de mal à la rétablir je pense!


PS pour Vedder: ton problème d'espace vient de ce qu'en php, tu peux te permettre d'écrire:
echo '<td width=250>'; à la place de
echo '<width="250">';
mais pas :
echo ''; à la place de
echo '';
D'où la rectification des guillemets dans mon code.
Si vous vous demandez à quoi sert ma fonction "accent", enlevez-là vous verrez ;^)

Bonne prog à tous :)
Evan
-=|[titiplusplus]|=- Messages postés 28 Date d'inscription vendredi 7 novembre 2003 Statut Membre Dernière intervention 19 avril 2004
20 nov. 2004 à 15:43
une habitude ... ca te permet en quelque sorte d'avoir un index pour les tri les recherche etc .... tout comme une table d'une base de données en fait.

Ici elle ne sert peut etre à rien mais bon ^^
RazielReaver Messages postés 34 Date d'inscription vendredi 2 avril 2004 Statut Membre Dernière intervention 9 juillet 2005
1 sept. 2004 à 08:17
Un truc qui me chagrine pourquoi mettre un id a la classe qui s'incrémente a chaque utilisation ?
vedder1896 Messages postés 10 Date d'inscription mercredi 2 avril 2003 Statut Membre Dernière intervention 19 avril 2004
19 avril 2004 à 01:19
salut ! j'avais déja pensé à cette alternative mais j'ai pas vraiment le gout d'me tapper "l'analyse" de tout les noms de fichier dont je veux partager.. :) ( + de 2000 ) merci quand même.. je vais continuer à chercher ! ciao
-=|[titiplusplus]|=- Messages postés 28 Date d'inscription vendredi 7 novembre 2003 Statut Membre Dernière intervention 19 avril 2004
16 avril 2004 à 08:37
Je viens de tester avec 2 fichiers html et ca marche.
Mais cette question s'aparente plus au langage html que php ... moi je vais te donner une réponse en php :
Analyse le nom de ton fichier, et si il y a un espace, renome-le en supprimant l'espace ou en le remplacant par un underscore :-)
vedder1896 Messages postés 10 Date d'inscription mercredi 2 avril 2003 Statut Membre Dernière intervention 19 avril 2004
15 avril 2004 à 16:20
une autre petite question..après avoir fait afficher chaque fichier dans chacun des répertoires.. j'ai fait sortir le fichier en un lien hypertexte
" mais si mon répertoire ou le fichier a des espaces et bien il le "trim"... ex: daemon tool.exe s'affiche daemon tout simplement qui brise alors mon lien..

t'as une idée ??
merci
-=|[titiplusplus]|=- Messages postés 28 Date d'inscription vendredi 7 novembre 2003 Statut Membre Dernière intervention 19 avril 2004
15 avril 2004 à 08:51
Merci à tous pour vos commentaires :-)

Pour répondre à Vedder le plus simple pour récupérer la taille d'un fichier est la fonction filesize($fullpathstring);

Voilou ...

Faudrait que je commente mes sources les plus intéressantes pour les mettre sur le site, c'est assez sympa je trouve ce mode d'échange.
cs_Kirua Messages postés 3006 Date d'inscription dimanche 14 avril 2002 Statut Membre Dernière intervention 31 décembre 2008
15 avril 2004 à 03:57
c'est une méthode intéressante de récursivité ^^
vedder1896 Messages postés 10 Date d'inscription mercredi 2 avril 2003 Statut Membre Dernière intervention 19 avril 2004
15 avril 2004 à 01:09
je vois pas comment faire afficher la grosseur des fichiers en question...tu sais comment ??

ex: round((($fullpath."/".$file)) / (1<<20)), 2)
vedder1896 Messages postés 10 Date d'inscription mercredi 2 avril 2003 Statut Membre Dernière intervention 19 avril 2004
15 avril 2004 à 00:17
toi t un KING en ****!
enfin d'la prog pur et propre comme on l'aime !
sans rancune ! = )