PHP将多个文件上传到FTP

问题描述 投票:1回答:1

我正在尝试通过PHP将文件上传到FTP,它可以工作......有点儿。 请看看我的代码;

        $filename = $_FILES['files']['name'];
            $host = "ftp.mydomain.com";
            $username = "myusername";
            $password = "mypassword";
            $local_file = 'upload/'.$filename;
            $remote_file = $filename;

            $con = ftp_connect($host, 21) or die("Couldnt connect");
            $log = ftp_login($con, $username, $password) or die("Wrong username or password.");

            ftp_pasv($con, true);

            $upload = ftp_put($con, $remote_file, $local_file, FTP_BINARY);
            if($upload) echo 'Error.';
            ftp_close($con);

            echo 'Success';
            exit;

这个脚本实际上工作,但只有一个文件。 如果我通过表单上传多个文件,它只会上传一个文件。 我希望上传我表单中的所有文件。 我怎样才能做到这一点?

php file upload ftp
1个回答
3
投票

您可能想要查看循环。 一种解决方案可能是使用foreach循环遍历从表单中获取的所有文件,例如:

foreach($_FILES['files'] as $file){
    // your upload logic here
}

您还必须调整html上传表单中的逻辑。 您必须考虑多个$_FILES['files'] ,例如格式为$_FILES['files'][0]$_FILES['files'][1] ,..., $_FILES['files'][n]

我希望这会给你一些方向:-)

© www.soinside.com 2019 - 2024. All rights reserved.