0

PHPのftp関数を使用してcsvファイルをライブサーバーにアップロードする必要があります

私のコード

 $local_filename = $_SERVER['DOCUMENT_ROOT'].'/feeds/ftp/xyz.csv';
 $remote_filename = date('Y-m-d_').'data.csv';

 $ftp_server = 'sftp.myhost.com';
 $ftp_user_name = 'username';
 $ftp_user_pass = 'password';
 $conn_id = ftp_connect($ftp_server,22);
 // login with username and password
 $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
 if (ftp_put($conn_id, $remote_filename, $local_filename, FTP_ASCII)) {
unlink($local_filename);
$res = true;
 } else {
$res = false;
 }
 ftp_close($conn_id);

そして、私はこれを得ています:

 Warning: ftp_login() expects parameter 1 to be resource, boolean given in C:\wamp\www\fstp\index.php on line 11

このエラーを解決するにはどうすればよいですか?

4

2 に答える 2

1

SFTP サーバーに接続しようとしているようですftp_ssl_connect。代わりに使用してください。

また、コードはあまり堅牢ではありません。続行する前に、ftp_connectまたはの戻り値を確認する必要があります。ftp_ssl_connect

于 2013-08-09T12:34:46.993 に答える
1

ftp_connect()エラーで戻りFALSEます。boolean given inこれが、最初の引数があるというエラー メッセージが表示される理由です。

接続情報が有効であることを確認してください。今後、ログインを試みる前に、接続が成功したことも確認する必要があります。

if($conn_id) {
    ...
}
于 2013-08-09T12:34:54.423 に答える