问题描述
我在互联网上搜索了很多,但我没有找到解决方案.我需要通过 PHP 将文件上传到 FTP 服务器.
I search a lot on internet but i don't find a solution. I need upload a file to an FTP server through PHP.
我在下面测试了各种 PHP 脚本,但总是遇到同样的问题(我尝试使用绝对路径、普通路径和其他路径):
I tested various script PHP like this below but I always receive the same problem (I tries with absolute, normal and other path):
已连接
警告:ftp_put():无法打开该文件:第 20 行的/web/htdocs/www.stanem.it/home/csv/importinnovacsv.php 中没有这样的文件或目录
上传/web/htdocs/www.stanem.it/home/csv/test.csv 时出现问题
connected
Warning: ftp_put(): Can't open that file: No such file or directory in /web/htdocs/www.stanem.it/home/csv/importinnovacsv.php on line 20
There was a problem while uploading /web/htdocs/www.stanem.it/home/csv/test.csv
我必须做什么?
<?php
$ftp_server="ftp.xxxx.it";
$ftp_user_name="user";
$ftp_user_pass="psw";
// connect and login to FTP server
$ftp_conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server");
$login = ftp_login($ftp_conn, $ftp_user_name, $ftp_user_pass);
if($login) {
echo 'connected<br>';
// Where I need to put file
$local_file = '/web/htdocs/www.stanem.it/home/csv/test.csv';
// Where I copy the file
$server_dir = 'ftp://15886:XDBbcFYQUs@ftp.innovaspa.it';
// upload a file
if (ftp_put($ftp_conn, $server_dir, $local_file, FTP_ASCII)) {
echo "successfully uploaded $local_file
";
exit;
} else {
echo "There was a problem while uploading $local_file
";
exit;
}
}
推荐答案
$remote_file 参数.ftp-put.php" rel="nofollow noreferrer">ftp_put
是 FTP 服务器上 file 的 path.
The $remote_file
argument of ftp_put
is a path to the file on the FTP server.
您正在传递一个 URL(它甚至会遗漏任何路径或文件名).
You are passing a URL (and it even misses any path or file name).
应该是这样的:
$remote_file = "/remote/path/test.csv";
一旦解决了路径问题,您也可能会遇到数据连接问题,因为您使用的是默认活动模式.请参阅 PHP ftp_put 失败.
这篇关于ftp_put():无法打开那个文件:没有那个文件或目录的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!