PHP ftp脚本在浏览器中工作但不能作为CRON工作吗?

时间:2016-01-14 17:18:32

标签: php ftp cron

我提前为发布此事道歉,但我搜索了论坛但仍无法找到答案。

我的PHP脚本创建一个csv并将其上传到另一个ftp服务器在浏览器中工作正常,但不能作为一个cron工作。 cron作业不断向我发送错误上传:",但是当我在浏览器上运行它时,一切正常,我得到了成功上传:"我无法解决这个问题。我是Godaddy fyi。

Cron Command:

*/2 * * * * /usr/bin/php5 -q -f /home/admin/public_html/cron.php

这是我的代码:

$file_name = $_SERVER["DOCUMENT_ROOT"].'/path_to/file.csv';
$output = fopen($file_name, 'wb');

$query = 'SELECT * FROM table';
$result = mysqli_query($con, $query);

while($column = mysqli_fetch_field($result)){
   $columns[] = str_replace('_', ' ', $column->name);
}
fputcsv($output, $columns);

while ($field = mysqli_fetch_assoc($result)){
   fputcsv($output, $field);
}


$fileName = 'local_file.csv';
$file = $_SERVER["DOCUMENT_ROOT"].'/path_to/'.$fileName;
$remote_file = '/path_to/remote_file.csv';

$ftp_server = "domain.com";
$ftp_conn = ftp_connect($ftp_server);

$ftp_user = 'username';
$ftp_pass = 'password';
ftp_login($ftp_conn,$ftp_user,$ftp_pass);

if(ftp_put($ftp_conn, $remote_file, $file, FTP_BINARY)) {
   echo "Successfully Uploaded: $fileName.";

}
else {
   echo "Error Uploading: $fileName.";
}

ftp_close($ftp_conn);

1 个答案:

答案 0 :(得分:0)

cli php中没有$_SERVER["DOCUMENT_ROOT"]