0
    <?

//$conn_id = ftp_connect($_GET['host'],21,5) or die ('Cant connect to host!');
$conn_id = ftp_connect($_GET['host']) or die ('Cant connect to host!');
ftp_pasv($conn_id, true);
echo 'host OK<br>';
$login_result = ftp_login($conn_id, addslashes($_GET['user']), $_GET['pass']) or die ('Cant connect with username/pass!');
echo 'conect OK<br>Contents there:';


print_r (ftp_nlist($conn_id,"."));
echo '<br />';
if(ftp_put($conn_id, "just-d-test.html", "img/just-d-test.html", FTP_BINARY))
echo 'put OK';
else
print  'put Failed!';

echo "<p><hr>";
echo phpinfo();
?>

ftp_nlist が false として返されるという問題があります。

正常に接続されますが、後者のタスクでは常に put Failed (false) が返されます。

CentOS でファイアウォールを無効にしましたが、うまくいきませんでした。PHP.ini で特に無効にされているものはありません。

PHP 5.3.3 を使用しています。FileZilla を使用して FTP.XXX にアクセスすると、ディレクトリが完全に読み込まれます。

これを機能させる方法を知っている人はいますか?

これは私が得ているものですhttp://www.uploadaphoto.co.uk/images/untitled.jpg

4

1 に答える 1

3

ftp_pasv() は、ログインが成功した後にのみ呼び出すことができることに注意してください。そうしないと失敗します。(ソース

コマンドのftp_pasv($conn_id, true)後に実行してみてくださいftp_login()

于 2012-06-05T17:49:25.210 に答える