Я новичок в PHP, и я использую этот код для загрузки изображения с FTP на мой рабочий стол:
// try to login
if (@ftp_login($conn_id, $ftp_user, $ftp_pass)) {
echo "<p> Connected as " . $ftp_user . " " . $ftp_server . "</p>";
} else {
echo "<p> Couldn't connect as" . $ftp_user . "</p>";
}
$local_file = "C:\Users\sam\Desktop";
$server_file = "ftp://[email protected]/public/sites/www.ronvanderwerf.com/Images/beeld.jpg";
// download server file
if (ftp_get( $conn_id, $local_file, $server_file, FTP_ASCII))
{
echo "Successfully written to $local_file.";
}
else
{
echo "Error downloading $server_file.";
}
Я запускаю этот код на XAMPP. К сожалению, вот что я получаю:
*Connected as md346645 188.93.148.30*
*Warning: ftp_get(C:\Users\sam\Desktop): failed to open stream: Permission denied in C:\xampp\htdocs\Website ron\index.php on line 34*
*Warning: ftp_get(): Error opening C:\Users\sam\Pictures in C:\xampp\htdocs\Website ron\index.php on line 34*
*Error downloading [email protected]/public/sites/www.ronvanderwerf.com/Images/beeld.jpg.*
Мне кажется, что я должен chmod мой $local_file
дать разрешение. К сожалению, мне не удалось этого добиться.
У кого-нибудь есть какие-либо идеи?
Вторым параметром функции ftp_get является имя файла, а не каталог. Этот код на самом деле пытается сохранить изображение в файл «C: \ Users \ sam \ Desktop», который, конечно, не является файлом, и я предполагаю, что Windows не позволяет ничего случиться с этой драгоценной папкой …
Вам просто нужно добавить правильное имя файла, попробуйте это:
$local_file = "C:\Users\sam\Desktop\theimage.jpg";
или, только с именем файла, если вы хотите, чтобы изображение было сохранено в текущей папке:
$local_file = "theimage.jpg";
Других решений пока нет …