Hello Vincent, It'a bad way to do so, becouse the default sharing (like c$, d$, admins$) could be turned off. This code, should work fine, if the user, under witch php is running have permissions to access target folder: $dir="C:\\Documents and Settings\\pravin\\Desktop\\abcd2\\"; if (is_dir($dir)) { if ($dh = opendir($dir)) { while (($file = readdir($dh)) !== false) { echo "filename: $file : filetype: " . filetype($dir.$file) ."\n"; } closedir($dh); } } $dir = dir($source); Also, on win32 system you have to use double slashes in path. VD> Hi, VD> I experienced the same problem some time ago. VD> Try to use \\remote_computer instead of a mounted drive (G:\). VD> Also, there is something like a BUG in is_dir(). VD> The is_dir function does not return the good value for remote VD> shares. Use !is_file() instead of is_dir(). VD> Make sure your script or the user running the script has VD> access to the remote drive. I use IIS to do this. Don't know for VD> Apache but you must be able to run the apache service with a VD> specific user. VD> here is a code sample that works for me on paths like //remote_computer/d$/Temp/ : VD> function getChildrenFiles($dir){ VD> $output = array(); VD> $files = array(); VD> if((!is_file($dir))&&($dir_handle = opendir($dir))){ VD> //use !is_file instead of is_dir because of a bug in is_dir with windows shares VD> while($file = readdir($dir_handle)){ VD> if($file !== "." && $file !== ".."){ VD> $files[] = $file; VD> }//if VD> }//while VD> closedir($dir_handle); VD> for($i=0; $i<sizeof($files);$i++){ VD> $tmpFile = new FileClass("$dir/".$files[$i]); if (($tmpFile->>isFile()) VD> &&(isset($this->allowedExtensions)) VD> &&(sizeof($this->allowedExtensions)>0) VD> &&(in_array($tmpFile->getExtension(), $this->allowedExtensions))){ VD> $output[] = $tmpFile; VD> } VD> elseif(($tmpFile->isFile())&&((!isset($this->allowedExtensions))||(sizeof($this->allowedExtensions)==0))){ VD> $output[] = $tmpFile; VD> } VD> else{ VD> $tmpFile=NULL; VD> } VD> }//wfor VD> }//if VD> else{ VD> //DEBUG //print("NOT DIR or NOT OPENABLE<br />"); VD> } VD> reset($output); VD> return $output; VD> } VD> -----Original Message----- VD> From: Gryffyn, Trevor [mailto:TGryffyn@xxxxxxxxxxxxxxxxx] VD> Sent: mardi 30 novembre 2004 15:40 VD> To: php-windows@xxxxxxxxxxxxx VD> Cc: Mike; Pravin-Kumar VD> Subject: RE: problem to open dir VD> I think \' is going to quote the single-quote too. Best to quote the VD> backslashes I guess. Change all the \ to \\ VD> Also.. Silly question.. But that directory DOES exist, right? VD> I assume the is_dir() line is 69 and the opendir() is line 70, correct? VD> -TG >> -----Original Message----- >> From: Mike [mailto:php@xxxxxxxxxxxx] >> Sent: Tuesday, November 30, 2004 12:06 AM >> To: 'Pravin-Kumar'; php-windows@xxxxxxxxxxxxx >> Subject: RE: problem to open dir >> >> >> When you set the $dir variable, try doing so with single >> quotes - the \ >> character is used to escape things and might be causing some problems. >> >> If that makes no sense, it's because I'm falling asleep. >> >> Good luck. >> >> -M >> >> > -----Original Message----- >> > From: Pravin-Kumar [mailto:pravin@xxxxxxxxxxxx] >> > Sent: Tuesday, November 30, 2004 12:37 AM >> > To: php-windows@xxxxxxxxxxxxx >> > Subject: problem to open dir >> > >> > hi all >> > i am getting some unexpected error while try to read a local dir.. >> > it is working on the pc where apache is running ..but same >> > code not working while trying from other pcs in lan.. >> > here is code.. >> > $dir="C:\Documents and Settings\pravin\Desktop\abcd2"; if >> > (is_dir($dir)) { >> > if ($dh = opendir($dir)) { >> > while (($file = readdir($dh)) !== false) { >> > echo "filename: $file : filetype: " . filetype($dir >> > . $file) ."\n"; >> > } >> > closedir($dh); >> > } >> > } >> > >> > $dir = dir($source); >> > >> > >> > giving error: >> > Warning: dir(C:\Documents and Settings\pravin\Desktop\cdac2): >> > failed to open dir: Invalid argument in >> > G:\Vyapar\AdvMgmt\addadvt3.php on line >> > 69 >> > >> > Fatal error: Call to a member function on a non-object in >> > G:\Vyapar\AdvMgmt\addadvt3.php on line 70 -- Best regards, re_action mailto:re_action@xxxxxxxxxx -- PHP Windows Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php