jQuery fileupload 多文件上传

jQuery fileupload 多文件上传,第1张

//js

$(function () {

//文件上传地址

//var url = 'http://localhost/index.php/upload/do_upload'

var url = 'http://localhost/index.php/uploadwe'

//初始化,主要是设置上传参数,以及事件处理方法(回调函数)

$('#fileupload').fileupload({

autoUpload: true,//是否自动上传

//url: url,//上传地址

dataType: 'json',

done: function (e, data) {//设置文件上传完毕事件的回调函数

//$.each(data.result.files, function (index, file) {

$("#myimg").attr({src:data.result.imgurl})

$("#myimg").css({width:"290px",height:"218px"})

//alert(data.result)

},

progressall: function (e, data) {//设置上传进度事件的回调函数

var progress = parseInt(data.loaded / data.total * 5, 10)

$('#progress .bar').css(

'width',

progress + '%'

)

}

})

}) 

//上传至服务后,服务器返回json数据--上传图片的地址。

//html

<label for="text">上传图片</label>

<input id="fileupload" type="file" name="files" data-url="<span style="color:#ff6666">jquery_save_img</span>" multiple>

//data-url为上传至服务器端的处理接口/地址,可替换js中的url

//服务器端

function jquery_save_img()  

    {  

        $arrType=array('image/jpg','image/gif','image/png','image/bmp','image/pjpeg','image/jpeg')  

        $max_size='500000000000'      // 最大文件限制(单位:byte)  

        $upfile='./uploads' //图片目录路径  

        $file=$_FILES['files']  

  

        /* 

        echo 'filename:'.$file['tmp_name'].'<br />' 

        echo 'size:'.$file['size'].'<br />' 

        echo 'type:'.$file['type'].'<br />' 

        echo 'name:'.$file['name'].'<br />' 

        */  

          

        if($_SERVER['REQUEST_METHOD']=='POST'){ //判断提交方式是否为POST  

            if(!is_uploaded_file($file['tmp_name'])){ //判断上传文件是否存在  

                echo "<font color='#FF0000'>文件不存在!</font>"  

                exit  

            }  

  

            if($file['size']>$max_size){  //判断文件大小是否大于500000字节  

                echo "<font color='#FF0000'>上传文件太大!</font>"  

                exit  

            }   

            if(!in_array($file['type'],$arrType)){  //判断图片文件的格式  

                echo "<font color='#FF0000'>上传文件格式不对!</font>xxx:".$file['type']  

                exit  

            }  

            if(!file_exists($upfile)){  // 判断存放文件目录是否存在  

                mkdir($upfile,0777,true)  

            }   

            $imageSize=getimagesize($file['tmp_name'])  

            $img=$imageSize[0].'*'.$imageSize[1]  

            $fname=$file['name']  

            $ftype=explode('.',$fname)  

            $picName=$upfile."/cloudy".$fname  

  

            if(file_exists($picName)){  

                //echo "<font color='#FF0000'>同文件名已存在!</font>"  

                //exit  

            }  

            if(!move_uploaded_file($file['tmp_name'],$picName)){    

                echo "<font color='#FF0000'>移动文件出错!</font>"  

                exit  

            }  

            else{  

            /* 

                echo "<font color='#FF0000'>图片文件上传成功!</font><br/>" 

                echo "<font color='#0000FF'>图片大小:$img</font><br/>" 

                echo "图片预览:<br><div style='border:#F00 1px solid width:200pxheight:200px'> 

                <img src=\"".$picName."\" width=200px height=200px>".$fname."</div>" 

            */  

                echo '{"imgurl":"http://localhost/uploads/cloudy'.$fname.'"}'  

            }  

        }  

      

    }

jquery有个插件叫uploadify

http://www.uploadify.com/

$(function() { $("#file_upload_1").uploadify({ height: 30, swf : '/uploadify/uploadify.swf', uploader : '/uploadify/uploadify.php', width : 120 })})

<!doctype html>

<html lang="zh">

<head>

<meta charset="utf-8">

<title>HTML5 Ajax Uploader</title>

<script src="jquery-2.1.1.min.js"></script>

</head>

 

<body>

<p><input type="file" id="upfile"></p>

<p><input type="button" id="upJS" value="用原生JS上传"></p>

<p><input type="button" id="upJQuery" value="用jQuery上传"></p>

<script>

/*原生JS版*/

document.getElementById("upJS").onclick = function() {

 /* FormData 是表单数据类 */

 var fd = new FormData()

 var ajax = new XMLHttpRequest()

 fd.append("upload", 1)

 /* 把文件添加到表单里 */

 fd.append("upfile", document.getElementById("upfile").files[0])

 ajax.open("post", "test.php", true)

 

 ajax.onload = function () {

 console.log(ajax.responseText)

 }

 

 ajax.send(fd)

  

}

 

/* jQuery 版 */

$('#upJQuery').on('click', function() {

 var fd = new FormData()

 fd.append("upload", 1)

 fd.append("upfile", $("#upfile").get(0).files[0])

 $.ajax({

 url: "test.php",

 type: "POST",

 processData: false,

 contentType: false,

 data: fd,

 success: function(d) {

 console.log(d)

 }

 })

})

</script>

</body>

</html> <?php

if (isset($_POST['upload'])) { 

var_dump($_FILES)

move_uploaded_file($_FILES['upfile']['tmp_name'], 'up_tmp/'.time().'.dat')

//header('location: test.php')

exit

}

?>


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/11488486.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存