1

您好,我想使用 php 脚本上传多个文件。它可以识别所有文件,但不会将它们移动到正确的文件夹中,也不会出现任何错误。

这是php代码

if(isset($_POST['uploadImage'])){
    for($i=0;$i<count($_FILES['upload']['size']);$i++){
        if(strstr($_FILES['upload']['type'][$i], 'image')!==false){
            $name = $_FILES['upload']['name'][$i];
            move_uploaded_file($name, "../_/upload");
            echo $name;
        }
    }
}

这是html

<form name="formAdd" method="post" action="../control/checkCall.php" enctype="multipart/form-data">
<input type="file" value="" name="upload[]" multiple>
<button type="submit" name="uploadImage">Upload!</button>
</form>
4

4 回答 4

2

更改以下行

move_uploaded_file($_FILES['upload']['tmp_name'][$i],"../../upload/".$name);
于 2013-07-18T11:27:50.540 回答
0

您应该问自己(如果尚未完成):

- move_uploaded_file() 真的被调用了吗?

-move_uploaded_file() 有效吗?

于 2013-07-18T11:26:19.097 回答
0

我认为它不起作用,因为当您加载文件时,它会获得一个临时文件名,您需要将其用作 move_uploaded_file 参数。

尝试这个:

if(isset($_POST['uploadImage'])){
    for($i=0;$i<count($_FILES['upload']['size']);$i++){
        if(strstr($_FILES['upload']['type'][$i], 'image')!==false){
            $tname = $_FILES['upload']['tmp_name'][$i];
            move_uploaded_file($tname, "../_/upload");
            echo $tname;
        }
    }
}
于 2013-07-18T11:28:03.017 回答
0

还要检查上传/目录在 FTP 中有 755 chmod 权限

于 2013-07-18T11:29:32.520 回答