проблема загрузки php ftp - PullRequest
3 голосов
/ 07 июня 2010

Я пытаюсь написать небольшую функцию php, которая будет загружать файлы на FTP-сервер, и я продолжаю получать ту же ошибку, но я не могу найти какое-либо решение, прибегая к помощи проблемы, надеюсь, вы, ребята, можете помочь мне здесь

Я получаю сообщение об ошибке: Предупреждение: ftp_put () [function.ftp-put]: Невозможно установить соединение для передачи данных: Нет маршрута к хосту.

Файл был создан на FTP-сервере, но это нулевые байты.

Вот код:

<?php
$file = "test.dat";

$ftp_server="ftp.server.com";
$ftp_user = "myname";
$ftp_pass = "mypass";
$destination_file = "test.dat";


$cid=ftp_connect($ftp_server);
if(!$cid) {
    exit("Could not connect to server: $ftp_server\n");
}

$login_result = ftp_login($cid, $ftp_user, $ftp_pass);
if (!$login_result) {
    echo "FTP connection has failed!";
    echo "Attempted to connect to $ftp_server for user $ftp_user";
    exit;
} else {
echo "Connected to $ftp_server, for user $ftp_user";
}

$upload = ftp_put($cid, $destination_file, $file, FTP_BINARY);
if (!$upload) {
    echo "Failed upload for $source_file to $ftp_server as $destination_file<br>";
    echo "FTP upload has failed!";
} else {
    echo "Uploaded $source_file to $ftp_server as $destination_file";
}

ftp_close($cid);
?>

1 Ответ

8 голосов
/ 07 июня 2010

Я забыл перевести FTP в пассивный режим, используя:

ftp_pasv($cid, true);
...