$ftp=ftp_connect(“ftp.mywebsite.com”);
$login_result=ftp_login($ftp, “admin”, “adminpassword”);
$file = $_FILES["uploadfile"]["name"];
$fp = fopen($file, 'r');
if(ftp_fput($ftp, $file,$fp, FTP_BINARY))
{ echo "success"; }
else { echo "error"; }
ftp_close($ftp);
fclose($fp);
我已将此脚本设为php.net网站,我现在需要的是弄清楚如何将用户文件发送到ftp服务器而不是我服务器上的文件。我以为我可能需要将他们的文件上传到我的,然后从那里上传到ftp服务器的任何方式代码
答案 0 :(得分:1)
$file = $_FILES["uploadfile"]["name"];
这只是客户端提供的文件名。上传后,PHP会将其存储在一个随机名称的临时文件中,您可以通过$ _FILES数组的['tmp_name']
属性访问该文件。
如果您检查了fopen()是否成功(它没有),那么您已经解决了这个调试问题:
$file = $_FILES['uploadfile']['tmp_name'];
$fp = fopen($file, 'rb') or die("Unable to open $file for reading");
if (ftp_fput(...)) {
etc...
}