Recupere les nom des dossier et page dans ftpp

Fermé
ivan - 27 janv. 2014 à 18:01
 ivan - 28 janv. 2014 à 16:23
Bonjour,

j'ai fait une page de la structure des dossier ftpp

je voulais savoir si vous pouvez me donner un code afin de recuperer les nom du dosser et les nom de page

car j'ai fait un truc comme ca


      <div class="cadre_transparent">
	  <div class="tree_top">La structure du site</div>
	  
	  
	  <ul class="tree5">
          <li class="structure1">Avatar</li>
	    </ul>


	  <ul class="tree5">
          <li class="structure1">Design</li>
	    </ul>


	  <ul class="tree5">
          <li class="structure1">Basic</li>
	    </ul>


	  <ul class="tree5">
          <li class="structure1">Fonts</li>
	    </ul>


	  <ul class="tree5">
          <li class="structure1">ImagesDevDebug</li>
	    </ul>


	  <ul class="tree5">
          <li class="structure1">Includes</li>
	    </ul>



	  <ul class="tree5">
          <li class="structure1">javasscript</li>
	    </ul>

	  <ul class="tree5">
          <li class="structure1">mail</li>
	    </ul>

	  <ul class="tree5">
          <li class="structure1">modules</li>
	    </ul>


</div>



là actiellement je met le n,om des dossier manuellent et idem les pages

je voudrais savoir c 'est quoi le code qui pourrais recupéré les nom des dossier sur le ftpp

merci


12 réponses

Nhay Messages postés 838 Date d'inscription vendredi 2 novembre 2012 Statut Membre Dernière intervention 17 décembre 2015 126
27 janv. 2014 à 19:51
<?php
$dirname = 'TON_DOSSIER';
$dir = opendir($dirname); 
while($file = readdir($dir)){
	if($file != '.' && $file != '..' && !is_dir($dirname.$file)){
		echo '<a href="'.$dirname.$file.'">'.$file.'</a>';
	}
}
closedir($dir);
 ?>

Ceci te permet de lister les fichiers d'un dossier, tu peut donc t'en servir pour ce que tu cherche (Si tu veux les classer, il te suffit de te servir de l'extension du fichier pour le trier)
0
il me dit erreur

Warning: opendir(TON_DOSSIER): failed to open dir: No such file or directory in /var/www/legtux.org/users/monsite/modules/struturesite.php on line 19

Warning: readdir() expects parameter 1 to be resource, boolean given in /var/www/legtux.org/users/monsite/modules/struturesite.php on line 20

Warning: closedir() expects parameter 1 to be resource, boolean given in /var/www/legtux.org/users/monsite/modules/struturesite.php on line 25

je veux affiche sur la 1 er collonne les dossier ensuite on fait un espace pour mettre le sous dossier et les sous dochier la page
0
Nhay Messages postés 838 Date d'inscription vendredi 2 novembre 2012 Statut Membre Dernière intervention 17 décembre 2015 126
27 janv. 2014 à 20:08
Il faut bien évidemment remplacer TON_DOSSIER par le nom de celui que tu veux scanné ... (Chaîne vide ou un p'tit ./ pour la racine)
0
je crois j'ai compris

<?php
$dirname = 'modules/';
$dir = opendir($dirname); 
while($file = readdir($dir)){
	if($file != '.' && $file != '..' && !is_dir($dirname.$file)){
		echo '<a href="'.$dirname.$file.'">'.$file.'</a><br />';
	}
}
closedir($dir);
 ?>


là il m'affiche tt les page.php du dossier module

et si je veux afficher le ddossier javasscript

je remet ce code a nouveau mais en changean le nom du dossier module par javasscript

dc ca me fait 6 fois ce code su r une page

car j'ai tester de mettre modul desing

mais ca ne marche pas

donc je doit repeter ce code de 10 ligne 10 fois

et sinon l'autre question là il m'affiche tt les page.php du dossier modul là c'est bon

mais il oublie d'afficher les sous dossier

l je vois faq.admin

normalement on devrait voir

module

faq
faq.admin

etc...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
je voulais faire comme ca je t'ai frai un exemple

http://leprojet.legtux.org/struturesite.html

là j'ai fait manuellement

enfin ca ne me derange pas de faire tt manuellement mais c long

mais comme cva je pourrais mettre les pages que je veux et non tt les pages

car certain page je ne veux pas qu'il m'affiche sur ma page
0
je croit j'ai compris car j'ai regarder

ton code c pour afficher juste un dossier

et si je veux afficher un autre dossier

j'ai juste recopier le code autant que je veux si il yu a 4 dossier

je doit recopier 4 fois le même code en changeant juste le nom du dossier

c bien ca pour faire la structure d'un site

et pour faire un plan du site là il faut faire manuellement

je voulais avoir une réponse pour voir si vcc'est bien ca

je vais le refaire
0
Nhay Messages postés 838 Date d'inscription vendredi 2 novembre 2012 Statut Membre Dernière intervention 17 décembre 2015 126
28 janv. 2014 à 12:34
Tu peut mettre le code que je t'ai mis dans une fonction, et utiliser is_dir pour tester si c'est un dossier ou un fichier (si c'est un dossier, tu relance la fonction, sinon tu affiche le nom du fichier)
Tu a juste à modifier un p'tit peu le if.
0
merci mais je t'ai refait un peut la modification avec mdes commentaire //

et tu m'aidera a refaire avec mes commentaire que j'ai mis e //

<?php
$dirname = 'avatar/';
echo '<ul class="tree10">
          <li class="structure12">Avatar</li>';


$dir = opendir($dirname); 
while($file = readdir($dir))




{
	if($file != '.' && $file != '..' && !is_dir($dirname.$file)){
		echo ' </ul>
      <ul>
        <ul class="tree11">';
		
		// on affiche l'image de la class tree
		if()
		
		{
		
		echo '<li class="imagehorizontal"><a href="'.$dirname.$file.'">'.$file.'</a></li>';
		
		}elseif{
		
		// sinon on affiche l'image last pour la dernier ligne
		
          echo '<li class="imagelast"><a href="'.$dirname.$file.'">'.$file.'</a></li>';
		  
		  
		}elseif{
		  
		// sinon on affiche l'image php si c'est une page.php
		
          echo '<li class="pagephp"><a href="'.$dirname.$file.'">'.$file.'</a></li>';

		}elseif{
		  
		// sinon on affiche l'image css si c'est une page.css
		
          echo '<li class="pagecss"><a href="'.$dirname.$file.'">'.$file.'</a></li>';
		  
		}elseif{
		  
		// sinon on affiche l'image js si c'est une page.js
		
          echo '<li class="pagejs"><a href="'.$dirname.$file.'">'.$file.'</a></li>';
		  
		}elseif{
		  
		// sinon on affiche l'image html si c'est une page.html
		
          echo '<li class="pagehtml"><a href="'.$dirname.$file.'">'.$file.'</a></li>';

		}';
		  
		  
		  
		  </ul>';


	}
}
closedir($dir);
 ?>


merci de ton aide
0
Nhay Messages postés 838 Date d'inscription vendredi 2 novembre 2012 Statut Membre Dernière intervention 17 décembre 2015 126
28 janv. 2014 à 13:09
Tu peut récupérer l'extension d'un fichier comme cela :

$extension=strrchr($file,'.');
$extension=substr($extension,1) ;

Tu peut donc t'en servir pour trier tes données, avec un if, ou un switch.
0
si c pas trop demander tu pourris me faire le code pou un dossier

c pour que j'ai un exemple

merci
0
bizzare là j'ai mis

<?php
$dirname = 'modules';
$dir = opendir($dirname); 
while($file = readdir($dir)){
	if($file != '.' && $file != '..' && !is_dir($dirname.$file)){
		echo '<a href="'.$dirname.$file.'">'.$file.'</a><br />';
	}
}
closedir($dir);
 ?>


ca c bon il recupere les page du dossier modul

et pour recupere les sous dossier du dossier du module

j'ai mis :


<?php
$dirname = 'admin';
$dir = opendir($dirname); 
while($file = readdir($dir)){
	if($file != '.' && $file != '..' && !is_dir($dirname.$file)){
		echo '<a href="'.$dirname.$file.'">'.$file.'</a><br />';
	}
}
closedir($dir);
 ?>


là il ne met pas les page du dossier admin car il met érreur et pour tamp c bien le mot admin

merci
0
j'ai un peut modifier dc

<?php

 $dirname = 'modules';
 $dir = opendir($dirname); 
 while($file = readdir($dir))
 {
  if($file != '.' && $file != '..' && !is_dir($dirname.$file))
  {

   if(is_file($file))
 
      echo '<a href="'.$dirname.$file.'" class="tree">'.$file.'</a><br />';
 
    else
  
     echo '<a href="'.$dirname.$file.'" class="tree2">'.$file.'</a><br />';
   }
 
   echo '<div class="last"> </div>';
  }
 closedir($dir);
 
?>


il me dit


Parse error: syntax error, unexpected 'echo' (T_ECHO) in /var/www/legtux.org/users/monsite/modules/struturesite.php on line 28

et ensuite j'ai repris le même code pour afficher les sous dossier du dossier module


mais il m'affiche érreur name


merci de yton aide
0