我目前正在开发一个使用Wordpress构建的网站,并且希望能够让客户在网站上传文件以进行打印,并将这些文件直接发送到本地FTP服务器。
我怎样才能做到这一点?很少有插件允许上传到FTP服务器,并且存在的插件似乎只允许用户上传文件到主机服务器上的媒体库,然后将文件复制到FTP服务器。我希望能够让用户上传文件,然后直接进入我们的本地FTP服务器。这是可能的,那里有一个插件可以实现吗? 谢谢!
答案 0 :(得分:0)
这是没有文件验证的示例。在实际保存或在任何地方使用之前,您应该始终验证上传的文件。此示例还显示了如何上载单个文件,然后使用FTP传输它。对于多文件处理,请修改此代码。
假设您已上传文件,现在文件句柄为$ file。并且您还拥有FTP服务器的凭据。
// best to keep this in a separate file as a constant or variable
$ftp_host = 'ftp.example.com';
$ftp_user = 'ftp_username';
$ftp_password = 'ftp_password';
// Try to get the filename from the $file, if you want to keep
// same filename. usually it is $_FILES['upfile']['tmp_name'];
$remote_filename = 'uploaded_file_name.txt';
// now we try to connect to ftp server
$ftp = ftp_connect($ftp_host);
$login = ftp_login($ftp, $ftp_username, $ftp_password);
if(!$ftp || $!login) {
// you can add logics here
echo 'FTP login failed';
}
if(ftp_fput($ftp, $remote_file, $file, FTP_BINARY)) {
echo "File successfully uploaded";
} else {
echo "Failed to upload file";
}
ftp_close($ftp);