Bonjour,
 
Je dois récupérer un adresse de fichier, son nom et sa taille à partir d'un lecteur réseau et le tout en récursif.
L'ensemble fonctionne très bien sauf jusqu'à un certain point : Ca bloque sur un fichier et ensuite ça bug....
 
explication :
 
Voilà le code source :
Code :
 - <?php
 - function list_dir($name, $handle) {
 - 	if($dir = opendir($name)) {
 -   while($file = readdir($dir)) {
 -   	if(!in_array($file, array(".", ".." ))
 -   	    && !ereg("Communication", $file)
 -   	    && !ereg("DAAF", $file)
 -   	    && !ereg("Fiscal", $file)
 -   	    && !ereg("LIVRET D'ACCUEIL", $file)
 -   	   ) {
 -     //dossier  
 -     if(is_dir($name."/".$file)) {
 -     	echo "<b>dossier : ".$name."\\".$file."</b><br>\n";
 -     	list_dir($name."\\".$file, $handle);
 -     }
 -     //fichier
 -     else {
 -     	echo "fichier ".$name."\\".$file."<br>";
 -     	$csv=$name.";".$file.";".date("Y-m-d H:i:s", filemtime($name."\\".$file)).";;;;;\r\n";
 -     	fwrite($handle, $csv);
 -     }
 -   	}
 -   }
 -   closedir($dir);
 - 	}
 - }
 - $handle = fopen("fichiers.csv", "w+" );
 - list_dir("X:\\", $handle);
 - echo "Fini";
 - fclose($handle);
 - ?>
 
  | 
 
et là, ce qu'il y a sur la page web :
Citation :
 
 
 dossier : X:\\Réformes\Propositions de réforme
 dossier : X:\\Réformes\Propositions de réforme\Réformes 1994
 dossier : X:\\Réformes\Propositions de réforme\Réformes 1994\Réformes closes
 dossier : X:\\Réformes\Propositions de réforme\Réformes 1994\Réformes closes\Réformes closes en abandon
 dossier : X:\\Réformes\Propositions de réforme\Réformes 1994\Réformes closes\Réformes closes en abandon\94-R034 STR 94.02 Modification du champ d'application de la majoration de la durée d'assurance vieillesse pour enfant
 dossier : X:\\Réformes\Propositions de réforme\Réformes 1994\Réformes closes\Réformes closes en abandon\94-R034 STR 94.02 Modification du champ d'application de la majoration de la durée d'assurance vieillesse pour enfant\Clôture 94-R034 STR94.02 maj° durée assurance.doc
 dossier : X:\\Réformes\Propositions de réforme\Réformes 1994\Réformes closes\Réformes closes en abandon\94-R034 STR 94.02 Modification du champ d'application de la majoration de la durée d'assurance vieillesse pour enfant\Clôture 94-R034 STR94.02 maj° durée assurance.doc\actus.php
 dossier : X:\\Réformes\Propositions de réforme\Réformes 1994\Réformes closes\Réformes closes en abandon\94-R034 STR 94.02 Modification du champ d'application de la majoration de la durée d'assurance vieillesse pour enfant\Clôture 94-R034 STR94.02 maj° durée assurance.doc\actus.php\actus.php
 dossier : X:\\Réformes\Propositions de réforme\Réformes 1994\Réformes closes\Réformes closes en abandon\94-R034 STR 94.02 Modification du champ d'application de la majoration de la durée d'assurance vieillesse pour enfant\Clôture 94-R034 STR94.02 maj° durée assurance.doc\actus.php\actus.php\actus.php
 dossier : X:\\Réformes\Propositions de réforme\Réformes 1994\Réformes closes\Réformes closes en abandon\94-R034 STR 94.02 Modification du champ d'application de la majoration de la durée d'assurance vieillesse pour enfant\Clôture 94-R034 STR94.02 maj° durée assurance.doc\actus.php\actus.php\actus.php\actus.php
 dossier : X:\\Réformes\Propositions de réforme\Réformes 1994\Réformes closes\Réformes closes en abandon\94-R034 STR 94.02 Modification du champ d'application de la majoration de la durée d'assurance vieillesse pour enfant\Clôture 94-R034 STR94.02 maj° durée assurance.doc\actus.php\actus.php\actus.php\actus.php\actus.php
 [...]
 
   | 
Le script plante au bout de quelques secondes.
 
A noter que ça fonctionne très bien pour d'autre dossier, mais là au niveau du fichier doc le is_dir croit que c'est un répertoire.... De plus, ça boucle sur le fichier actus.php qui est au même niveau que le script -_-
 
Le dossier et les fichiers qui bug sont en lecture seule, est ce que ça serais ça le problème ?
 
 
Merci de votre aide !