Fonction DIR en PHP ?

Curieux -  
Alain_42 Messages postés 5413 Statut Membre -
Bonjour,

je me lance dans le PHP;
j aimerai faire un DIR *. pour lister les dossiers de mon répertoire, puis ouvrir un dossier sélectionné par double clic, puis ouvrir le fichier .doc sélectionné.
Merci d'avance pour vos réponses éclairées.
A voir également:

1 réponse

Alain_42 Messages postés 5413 Statut Membre 894
 
Bonjour,

je me lance dans le PHP;

c'est très bien

ce qu'il ne faut pas perdre de vue:

le php est un langage de programmation qui est interprété par le serveur

- soit ton site est chez un hebergeur, dans ce cas tu listera les dossiers qui sont en "distant" (sur le serveur)

- soit tu as installé wamp ou easyPhp sur ton Pc, dans ce cas tu pourra effectivement lister tes dossiers "locaux"


le mieux si tu veux apprendre c'est de faire des recherches sur le web "php fonctions fichiers"

et la tu auras ttes les fonctions pour lire les rep etc..
fais des essais et si pb tu reviens sur le forum


principe:

tu listes le repertoire (dossier)
tu affiches sous forme de lien (passage en argument du nom du rep ex: test.php?rep=toto")
click sur le lien =>
tu listes les fichiers qu'ils contient (recup du nom du rep par $_GET['rep'])
tu affiches sous forme de lien
click sur le lien => ouverture du fichier
0
Curieux
 
Merci Alain pour ta réponse

Quand je dis je me lance, je me comprends.
j'ai quelques notions de programmations sous VBA, VB6, PHP, MYSQL etc...
j ai apache chez moi et je programme sous webexpert.
j ai un hébergeur pour mon site .
mais je n'ai plus touché la prog depuis 4 ans et ma mémoire fout l'camp... ;o)
j ai trouvé la fonction opendir et readdir sur AZ-PHP (grâces leur soient rendues :o))))
la boucle se passe bien et je vois mes dossiers.
mais un href est impuissant pour ouvrir les dossiers. Pour le document en word, je pense arriver à l'ouvrir (je chercherai une fonction style fopen.
le problème qui persiste pour l'instant est :
comment puis*je ouvrir un dossier listé par readdir et selectionner un fichier dans ce dossier?
merci pour ta contribution
0
Alain_42 Messages postés 5413 Statut Membre 894 > Curieux
 
re,

essayes comme ça, j'ai pas testé il y a peut être des erreurs

<html>
<?php
				//fichier lister_repertoire.php
				
$repertoire='ton_repertoire'; //le repertoire PRINCIPAL a lister attention mettre le chemin relatif par rapport a ce script
if(isset($_GET['sRep'])){ //si c'est un appel suite a un clik sur un lien d'un sous repertoire on va lister ce sous rep
	$sousRep_a_lister=$_GET['sRep'];
	$array_sRep=array();
	if ($handle = opendir($repertoire."/".$sousRep_a_lister)) {
		$array_sRep=array();
	    while (false !== ($file = readdir($handle))) {
	        if ($file != "." && $file != "..") {//on ne tient pas compte des fichiers . et .. (Unix)
	            $array_sRep[]=$file;//on empile dans un array
	        }
	    }
    closedir($handle);
	}
}else{
	$sousRep_a_lister="";
}

if ($handle = opendir($repertoire)) {
	$array_repertoire=array();
    while (false !== ($file = readdir($handle))) {
        if ($file != "." && $file != "..") {//on ne tient pas compte des fichiers . et .. (Unix)
            $array_repertoire[]=$file;//on empile dans un array
        }
    }
    closedir($handle);


	//affichage liste sous REp et eventuellement les fichiers 
	for ($i=0;$i<sizeof($array_repertoire);$i++){
		echo '<a href="lister_repertoire.php?sRep='.$array_repertoire[$i].'">'.$array_repertoire[$i].'</a><br />';
		//si on doit lister ce sous rep (liste des fichiers)
		if($array_repertoire[$i]==$sousRep_a_lister){
			for($j=0;$j<sizeof($array_sRep)$j++){
			
				echo '&nbsp;&nbsp;&nbsp;&nbsp;<a href="'.$repertoire."/".$sousRep_a_lister."/".$array_sRep[$j].'>'.$array_sRep[$j].'</a><br />';
//j'ai mis des espaces pour décaler par rapport aux rep
			}	
		}
	}
}
?>
</html>
0
Curieux > Alain_42 Messages postés 5413 Statut Membre
 
Je te remercie pour ton aide.
ton script est presque parfait (manquait un ; .... ca c'est à ma portée :o))
j arrive bien à voir les dossiers et a les ouvrir apparemment.
je vais m'aider de tes conseils plus haut pour ecrire un petit bout de code pour faire le dir de ce dossier.
j aime bien travailler comme ça : un bout de code qui me sert et dont je sais la finalité... j essaye de le comprendre et de me l'adapter plutot que de faire copy-paste de fainéant.... :o))

Cordialement
0
Curieux > Alain_42 Messages postés 5413 Statut Membre
 
Re
en fait je me suis trop pressé dans mon test.
je n avais pas lu qu'il me fallait installer ton script dans un fichier lister_repertoire.php.
j ai lu et compris ton machin : tout fonctionne parfaitement....

mais moi qu'est ce que je vais foutre maintenant ??? ;o))

merci ++
0
Alain_42 Messages postés 5413 Statut Membre 894 > Curieux
 
tu peux toujours chercher à l'améliorer

gestion affichage avec du CSS etc...

cordialement

@lain
0