PHP下载文件?
我正在尝试用PHP创建一个文件的下载程序。它将从服务器下载到本地计算机 以下是我目前掌握的代码:PHP下载文件?,php,ftp,Php,Ftp,我正在尝试用PHP创建一个文件的下载程序。它将从服务器下载到本地计算机 以下是我目前掌握的代码: // connect and login to FTP server $ftp_server = "files.000webhost.com"; $ftp_conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server"); $login = ftp_login($ftp_conn, "jonasvdr", "****
// connect and login to FTP server
$ftp_server = "files.000webhost.com";
$ftp_conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server");
$login = ftp_login($ftp_conn, "jonasvdr", "*******");
$local_file = "image";
$server_file = "https://jonasvdr.000webhostapp.com/uploads/NewlogoNoBackGround.png";
// download server file
if (ftp_get($ftp_conn, $local_file, $server_file, FTP_ASCII)) {
echo "Successfully written to $local_file.";
} else {
echo "Error downloading $server_file.";
}
// close connection
ftp_close($ftp_conn);
我得到的错误是:
警告:ftp_get():无法打开:第11行的/storage/ssd5/555/3642555/public_html/download.php中没有此类文件或目录
我试着把uploads/NewlogoNoBackGround.png代替整个URL,但得到了相同的结果
这个PHP页面位于主根目录中,该目录中有一个名为uploads的映射。那就是文件所在的地方。那么如何获取该文件?看起来您试图通过其URL而不是文件路径访问该文件。尝试:
$server_file = '/uploads/NewlogoBackGround.png';
或者,或者:
$server_file = $_SERVER['DOCUMENT_ROOT'].'/uploads/NewlogoBackground.png';
取决于文件的确切位置和文件结构。看起来您试图通过文件的URL而不是文件路径访问文件。尝试:
$server_file = '/uploads/NewlogoBackGround.png';
或者,或者:
$server_file = $_SERVER['DOCUMENT_ROOT'].'/uploads/NewlogoBackground.png';
取决于文件的确切位置和文件结构。我不希望
https://jonasvdr.000webhostapp.com/uploads/NewlogoNoBackGround.png
将成为有效的文件名。这看起来很像HTTP URL。您需要传递服务器文件系统上文件相对于FTP根的路径。你正在传递它的URL.ehhh。我是PHP新手。我该怎么做?只有路径名“/uploads/NewlogoNoBackGroupng“
为什么你要用FTP来做这件事,而不仅仅是复制($server\u file,$local\u file)
?我不希望https://jonasvdr.000webhostapp.com/uploads/NewlogoNoBackGround.png
将成为有效的文件名。这看起来很像HTTP URL。您需要传递服务器文件系统上文件相对于FTP根的路径。你正在传递它的URL.ehhh。我是PHP新手。我该怎么做?只有路径名“/uploads/NewlogoNoBackGround.png“
为什么你要用FTP来做这件事,而不仅仅是复制($server\u file,$local\u file)
?不起作用。。。对于这两个问题,我在第11行的/storage/ssd5/555/3642555/public_html/download.php中没有这样的文件或目录。下载/uploads/newlogoback.png时出错。不起作用。。。对于这两种情况,我都得到了“第11行的/storage/ssd5/555/3642555/public_html/download.php中没有这样的文件或目录下载/uploads/newlogoback.png时出错。”