php jquery 多文件上传简单实例

网络编程 2025-03-29 19:06www.168986.cn编程入门

这是一个关于PHP与jQuery实现多文件上传的简单实例,适合有需求的朋友参考学习。

我们在HTML中创建一个文件上传的按钮和一个用于显示上传状态的区域。按钮的ID为“mulitplefileuploader”,状态区域ID为“status”。

接下来,我们使用jQuery来处理文件上传。当文档加载完成后,我们设置上传的相关参数,如上传的URL(这里是"upload.php")、上传方法(POST)、允许上传的文件类型("jpg,png,gif,doc,pdf,zip")、上传文件的表单字段名("myfile")、是否允许多文件上传等。并绑定在文件上传按钮上。

在PHP端,我们创建一个名为upload.php的文件来处理文件上传。首先检查是否有文件上传,然后处理上传的文件。如果上传的是单个文件,就直接将文件移动到指定的输出目录;如果是多个文件,就遍历所有的文件,并将每个文件移动到输出目录。将文件路径以JSON格式输出。

在前端,我们可以根据后端返回的JSON数据来判断文件上传是否成功。如果成功,就在状态区域显示绿色的"Upload is suess";如果失败,就显示红色的"Upload is Failed"。

具体代码实现如下:

HTML部分:

```html

Upload

```

jQuery部分:

```javascript

$(document).ready(function(){

var settings = {

url: "upload.php",

method: "POST",

allowedTypes:"jpg,png,gif,doc,pdf,zip",

fileName: "myfile",

multiple: true,

onSuess:function(files,data,xhr){

$("status").html("Upload is successful");

},

onError: function(files,status,errMsg){

$("status").html("Upload failed");

}

};

$("mulitplefileuploader").uploadFile(settings);

});

```

PHP部分(upload.php):

```php

$output_dir = "../upload";

if(isset($_FILES["myfile"])) {

$ret = array();

$error = $_FILES["myfile"]["error"];

if(!is_array($_FILES["myfile"]['name'])) { //single file

$fileName = $_FILES["myfile"]["name"];

move_uploaded_file($_FILES["myfile"]["tmp_name"], $output_dir . $_FILES["myfile"]["name"]);

$ret[$fileName] = $output_dir . $fileName;

} else {

for($i=0; $i < count($_FILES["myfile"]['name']); $i++) {

$fileName = $_FILES["myfile"]["name"][$i];

$ret[$fileName] = $output_dir . $fileName;

move_uploaded_file($_FILES["myfile"]["tmp_name"][$i], $output_dir . $fileName );

}

}

echo json_encode($ret);

}

?>

``` 以上就是一个简单的PHP与jQuery多文件上传的实现实例,希望能给需要的朋友带来帮助。在实际使用中可能需要根据实际情况进行调整和优化。同时请注意文件的上传和处理涉及到安全和隐私问题,一定要做好权限控制和文件类型的验证。

上一篇:正则表达式截取字符串的方法技巧 下一篇:没有了

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by