【问题标题】:Allow customers to upload files directly to local ftp server on wordpress website允许客户将文件直接上传到 wordpress 网站上的本地 ftp 服务器
【发布时间】:2018-07-05 22:32:06
【问题描述】:

我目前正在开发一个使用 Wordpress 构建的网站,并且希望能够让客户端在网站上上传文件进行打印,并将这些文件直接发送到本地 FTP 服务器。

我怎样才能做到这一点?很少有插件允许上传到 FTP 服务器,而确实存在的插件似乎只允许用户上传文件到主机服务器上的媒体库,然后将文件复制到 FTP 服务器。我希望能够让用户上传文件并将其直接发送到我们的本地 FTP 服务器。那有可能吗,有没有可以实现的插件? 谢谢!

【问题讨论】:

    标签: wordpress plugins ftp upload


    【解决方案1】:

    这是一个没有文件验证的例子。在实际保存或在任何地方使用它之前,您应该始终验证上传的文件。此示例还显示了如何上传单个文件,然后使用 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);
    

    【讨论】:

    • 是否有一个 wordpress 插件可以创建表单并允许使用此功能上传文件?
    • 不幸的是,我不知道有这样的插件。
    猜你喜欢
    • 2015-11-04
    • 2011-07-31
    • 2014-03-22
    • 2012-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多