Hi, i'm trying to get a listing out of a directoty by using the FTP LIST function, it logs in correctly, turn to PASV mode, but hangs when the LIST command is called?
does anyone know why?
<?php
$ftp_username = "xxxxx";
$ftp_passw = "xxxxx";
$ftpserver = "xxxxx";
$ftpport = "21";
$ftptimeout = 60;
$returnlength = 1024;
$ftp=fsockopen($ftpserver, $ftpport, $errno, $errstr, $ftptimeout);
if (!$ftp) {
print("Connection failed: $errstr ($errno)");
exit;
}
else {
//In non-blocking mode an fgets() call will always return right away
//while in blocking mode it will wait for data to become available on the stream.
socket_set_blocking($ftp, true);
print(fgets($ftp,$returnlength));
print("<BR>");
fputs($ftp,"USER $ftp_username\r\n");
print(fgets($ftp,$returnlength));
print("<BR>");
fputs($ftp,"PASS $ftp_passw\r\n");
print(fgets($ftp,$returnlength));
print("<BR>");
fputs($ftp,"CWD \r\n");
print(fgets($ftp,$returnlength));
print("<BR>");
fputs($ftp,"PASV \r\n");
$pasv = fgets($ftp,$returnlength);
print($pasv);
fputs($ftp,"LIST \r\n");
print(fgets($ftp,$returnlength));
print("<BR>");
fputs($ftp,"QUIT \r\n");
print(fgets($ftp,$returnlength));
print("<BR>");
fclose($ftp);
}
?>