Lister des dossiers et fichiers présent sur un serveur du LAN

Bonjour,

J’aimerais via une interface web lister des dossier et fichiers présent sur un serveur externe du LAN

Pour cela il faudra fournir en meme temps une authentification.

J’aimerais éviter de passer par une connexion FTP pour centraliser au niveau du active directory les authorisations.

Voila ce j ai tenté de faire sans résultat:


<?php
// rep à définir comme il faut
$rep = "file://///serveur/Florent/";
$dir = opendir($rep);
$n=0;
while ($f = readdir($dir)) {
if(is_dir($rep.$f)) {
echo $f;
}
}
closedir($dir);
?> 

Je précise également que le serveur ou est installé le serveur Web est un linux ubuntu 8.10 et le serveur distant un 2000 server

merci d’avance

C’est à dire ?

Depuis le serveur Ubuntu, le dossier “file://///serveur/Florent/” est-il accessible en lecture ?

voici le resultat:

Warning: opendir(file://///serveur/Florent/) [function.opendir]: failed to open dir: No such file or directory in /var/www/liste_fichiers.php on line 4

Warning: readdir(): supplied argument is not a valid Directory resource in /var/www/liste_fichiers.php on line 6

Warning: closedir(): supplied argument is not a valid Directory resource in /var/www/liste_fichiers.php on line 11

En fait, le soucis est la. Oui le dossier Florent peut etre accessible en lecture et ecriture ca ne pose aucun problème, mais pour cela il faut que j’authentifie l’utilisateur

Essaye /server/Florent… PHP ne doit soit pas gérer la syntaxe file:/ soit ton chemin est faux…

j’ai essayer aussi, avec le meme problème

le chemin est bien bon pourtant

mais on dirait un chemin windows de type \XXX\xx ?

Je n’ai pas linux, mais 1) je pense qu’il ne reconnaît pas \xxx\xx comme type de chemins, et si c’est le cas, faut voir si ce n’est pas une extension de l’équivalent de l’explorateur linux 2) faut peut-être monter le serveur “réseau” comme un disque, et donc y accéder via un chemin genre /dev/sXXX/

Il faut suivre l’idée de sans-nom je pense, et donc faire :


// Installer le packet smbclient
mkdir -p /mnt/server
smbmount -o allow_other,username=<user>/<workgroup> <ipserver>:/Florent /mnt/server

Edité le 12/10/2009 à 11:11