亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > PHP > 正文

PHP Ajax上傳文件實例,ajaxfileupload.js

2024-09-04 11:45:00
字體:
來源:轉載
供稿:網友

講過利用jquery ajax與php實現圖片上傳,下面我介紹利用php ajax實現各種文件無刷新上傳,直接放實例希望給各位同學有幫助,可以批量進行添加上傳,簡單方便,代碼如下:

  1. <script type="text/javascript" src="jquery-1.5.1.min.js"></script> 
  2.  
  3.  
  4. <script    type="text/javascript" > 
  5.  
  6.  
  7. jQuery.extend({ 
  8.      
  9.  
  10.  
  11.     createUploadIframe: function(id, uri) 
  12.     { 
  13.            //create frame 
  14.             var frameId = 'jUploadFrame' + id; 
  15.             var iframeHtml = '<iframe id="' + frameId + '" name="' + frameId + '" style="position:absolute; top:-9999px; left:-9999px"'
  16.            if(window.ActiveXObject) 
  17.            { 
  18.                 if(typeof uri== 'boolean'){ 
  19.                   iframeHtml += ' src="' + 'javascript:false' + '"'
  20.  
  21.  
  22.                 } 
  23.                 else if(typeof uri== 'string'){ 
  24.                   iframeHtml += ' src="' + uri + '"'
  25.  
  26.  
  27.                 }  
  28.            } 
  29.            iframeHtml += ' />'
  30.            jQuery(iframeHtml).appendTo(document.body); 
  31.  
  32.  
  33.             return jQuery('#' + frameId).get(0);         
  34.     }, 
  35.     createUploadForm: function(id, fileElementId, data) 
  36.     { 
  37.        //create form  
  38.        var formId = 'jUploadForm' + id; 
  39.        var fileId = 'jUploadFile' + id; 
  40.        var form = jQuery('<form  action="" method="POST" name="' + formId + '" id="' + formId + '" enctype="multipart/form-data"></form>');    
  41.        if(data) 
  42.        { 
  43.            for(var i in data) 
  44.            { 
  45.               jQuery('<input type="hidden" name="' + i + '" value="' + data[i] + '" />').appendTo(form); 
  46.            }           
  47.        }       
  48.        var oldElement = jQuery('#' + fileElementId); 
  49.        var newElement = jQuery(oldElement).clone(); 
  50.        jQuery(oldElement).attr('id', fileId); 
  51.        jQuery(oldElement).before(newElement); 
  52.        jQuery(oldElement).appendTo(form); 
  53.  
  54.        //set attributes 
  55.        jQuery(form).css('position''absolute'); 
  56.        jQuery(form).css('top''-1200px'); 
  57.        jQuery(form).css('left''-1200px'); 
  58.        jQuery(form).appendTo('body');      
  59.        return form; 
  60.     }, 
  61.  
  62.  
  63.     ajaxFileUpload: function(s) { 
  64.         // TODO introduce global settings, allowing the client to modify them for all requests, not only timeout       
  65.         s = jQuery.extend({}, jQuery.ajaxSettings, s); 
  66.         var id = new Date().getTime()         
  67.        var form = jQuery.createUploadForm(id, s.fileElementId, (typeof(s.data)=='undefined'?false:s.data)); 
  68.        var io = jQuery.createUploadIframe(id, s.secureuri); 
  69.        var frameId = 'jUploadFrame' + id; 
  70.        var formId = 'jUploadForm' + id;        
  71.         // Watch for a new set of requests 
  72.         if ( s.global && ! jQuery.active++ ) 
  73.        { 
  74.            jQuery.event.trigger( "ajaxStart" ); 
  75.        }             
  76.         var requestDone = false
  77.         // Create the request object 
  78.         var xml = {}    
  79.         if ( s.global ) 
  80.             jQuery.event.trigger("ajaxSend", [xml, s]); 
  81.         // Wait for a response to come back 
  82.         var uploadCallback = function(isTimeout) 
  83.        {           
  84.            var io = document.getElementById(frameId); 
  85.             try  
  86.            {              
  87.               if(io.contentWindow) 
  88.               { 
  89.                    xml.responseText = io.contentWindow.document.body?io.contentWindow.document.body.innerHTML:null
  90.                    xml.responseXML = io.contentWindow.document.XMLDocument?io.contentWindow.document.XMLDocument:io.contentWindow.document; 
  91.                     
  92.               }else if(io.contentDocument) 
  93.               { 
  94.                    xml.responseText = io.contentDocument.document.body?io.contentDocument.document.body.innerHTML:null
  95.                   xml.responseXML = io.contentDocument.document.XMLDocument?io.contentDocument.document.XMLDocument:io.contentDocument.document; 
  96.               }                     
  97.             }catch(e) 
  98.            { 
  99.               jQuery.handleError(s, xml, null, e); 
  100.            } 
  101.             if ( xml || isTimeout == "timeout")  
  102.            {              
  103.                 requestDone = true
  104.                 var status; 
  105.                 try { 
  106.                     status = isTimeout != "timeout" ? "success" : "error"
  107.                     // Make sure that the request was successful or notmodified 
  108.                     if ( status != "error" ) 
  109.                   { 
  110.                         // process the data (runs the xml through httpData regardless of callback) 
  111.                         var data = jQuery.uploadHttpData( xml, s.dataType );     
  112.                         // If a local callback was specified, fire it and pass it the data 
  113.                         if ( s.success ) 
  114.                             s.success( data, status ); 
  115.      
  116.                         // Fire the global callback 
  117.                         if( s.global ) 
  118.                             jQuery.event.trigger( "ajaxSuccess", [xml, s] ); 
  119.                     } else 
  120.                         jQuery.handleError(s, xml, status); 
  121.                 } catch(e)  
  122.               { 
  123.                     status = "error"
  124.                     jQuery.handleError(s, xml, status, e); 
  125.                 } 
  126.  
  127.  
  128.                 // The request was completed 
  129.                 if( s.global ) 
  130.                     jQuery.event.trigger( "ajaxComplete", [xml, s] ); 
  131.  
  132.  
  133.                 // Handle the global AJAX counter 
  134.                 if ( s.global && ! --jQuery.active ) 
  135.                     jQuery.event.trigger( "ajaxStop" ); 
  136.  
  137.  
  138.                 // Process result 
  139.                 if ( s.complete ) 
  140.                     s.complete(xml, status); 
  141.  
  142.  
  143.                 jQuery(io).unbind() 
  144.  
  145.  
  146.                 setTimeout(function() 
  147.                                 {   try  
  148.                                    { 
  149.                                        jQuery(io).remove(); 
  150.                                        jQuery(form).remove();    
  151.                                         
  152.                                    } catch(e)  
  153.                                    { 
  154.                                        jQuery.handleError(s, xml, null, e); 
  155.                                    }                                
  156.  
  157.  
  158.                                 }, 100) 
  159.  
  160.  
  161.                 xml = null 
  162.  
  163.  
  164.             } 
  165.         } 
  166.         // Timeout checker 
  167.         if ( s.timeout > 0 )  
  168.        { 
  169.             setTimeout(function(){ 
  170.                 // Check to see if the request is still happening 
  171.                 if( !requestDone ) uploadCallback( "timeout" ); 
  172.             }, s.timeout); 
  173.         } 
  174.         try  
  175.        { 
  176.  
  177.  
  178.            var form = jQuery('#' + formId); 
  179.            jQuery(form).attr('action', s.url); 
  180.            jQuery(form).attr('method''POST'); 
  181.            jQuery(form).attr('target', frameId); 
  182.             if(form.encoding) 
  183.            { 
  184.               jQuery(form).attr('encoding''multipart/form-data');               
  185.             } 
  186.             else 
  187.            {    
  188.               jQuery(form).attr('enctype''multipart/form-data');         
  189.             }         
  190.             jQuery(form).submit(); 
  191.  
  192.  
  193.         } catch(e)  
  194.        {           
  195.             jQuery.handleError(s, xml, null, e); 
  196.         } 
  197.         
  198.        jQuery('#' + frameId).load(uploadCallback ); 
  199.         return {abort: function () {}};   
  200.  
  201.  
  202.     }, 
  203.  
  204.  
  205.     uploadHttpData: function( r, type ) { 
  206.         var data = !type; 
  207.         data = type == "xml" || data ? r.responseXML : r.responseText; 
  208.         // If the type is "script", eval it in global context 
  209.         if ( type == "script" ) 
  210.             jQuery.globalEval( data ); 
  211.         // Get the JavaScript object, if JSON is used. 
  212.         if ( type == "json" ) 
  213.             eval( "data = " + data ); 
  214.         // evaluate scripts within html 
  215.         if ( type == "html" ) 
  216.             jQuery("<div>").html(data).evalScripts(); 
  217.  
  218.  
  219.         return data; 
  220.     } 
  221. }) 
  222.  
  223. </script> 
  224.  
  225.  
  226. <form id="upform" action="" method="post" enctype="multipart/form-data"
  227.     <input id='fname' size='80' /><br> <input type="file" name="file1" 
  228.        id="file1" size="30" /> <input type="button" value="上傳" 
  229.        onclick="return ajaxFileUpload();" /> <span id="msg" 
  230.        style="display: none">UpLoading...</span> 
  231. </form> 
  232.  
  233.  
  234. <script type="text/javascript"
  235. var str = ''
  236. function ajaxFileUpload(){   
  237.     $("#msg"
  238.     .ajaxStart(function(){ 
  239.        $(this).show(); 
  240.     }); 
  241.     /* 
  242.     .ajaxComplete(function(){ 
  243.        $(this).hide(); 
  244.     }); 
  245.     */ 
  246.     $.ajaxFileUpload( 
  247.     { 
  248.        url:'up_deal.php'
  249.        secureuri:false
  250.        fileElementId:'file1'
  251.        dataType: 'text'
  252.        //data:{name:'qinmi', id:'123'}, 
  253.        success: function(data){ 
  254.               if(data=='error'){ 
  255.                   $('#msg').html("<span style='color:red'>上傳失敗</span>"); 
  256.               }else
  257.                   $('#msg').html("<span style='color:green'>上傳成功</span>"); 
  258.                   str +=  data+'@'
  259.                   $('#fname').val(str); 
  260.               } 
  261.            } 
  262.        } 
  263.     ); 
  264.     return false
  265. </script> 

 

up_deal.php,代碼如下:

  1. <?php 
  2. if ((($_FILES["file1"]["type"] == "image/gif"
  3. || ($_FILES["file1"]["type"] == "image/jpeg"
  4. || ($_FILES["file1"]["type"] == "image/bmp"
  5. || ($_FILES["file1"]["type"] == "image/pjpeg")) 
  6. && ($_FILES["file1"]["size"] < 100000)){//100KB 
  7.     $extend = explode(".",$_FILES["file1"]["name"]); 
  8.     $key = count($extend)-1; 
  9.     $ext = ".".$extend[$key]; 
  10.     $newfile = time().$ext
  11.     //開源代碼Vevb.com 
  12.     if(!file_exists('upload')){mkdir('upload');} 
  13.     move_uploaded_file($_FILES["file1"]["tmp_name"],"upload/" . $newfile); 
  14.     @unlink($_FILES['file1']); 
  15.     echo $newfile
  16. }else { 
  17.     echo 'error'
  18. ?> 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久国产91| 国产伦精品一区二区三区精品视频| 国产91精品最新在线播放| 97久久久久久| 日韩av在线精品| 亚洲成人精品久久久| 在线观看免费高清视频97| 亚洲一区二区久久久久久| 欧美久久精品午夜青青大伊人| 久久青草精品视频免费观看| 亚洲精品福利免费在线观看| 久热精品在线视频| 欧美成人精品一区二区| 日韩av综合网| 北条麻妃一区二区三区中文字幕| 日本亚洲欧美成人| 日韩亚洲欧美中文高清在线| 日韩在线视频线视频免费网站| 亚洲欧美一区二区三区情侣bbw| 国产男女猛烈无遮挡91| 在线不卡国产精品| 亚洲春色另类小说| 久久免费视频这里只有精品| 欧美午夜精品在线| 26uuu亚洲国产精品| 欧美性生交大片免网| 美女扒开尿口让男人操亚洲视频网站| 国产亚洲精品日韩| 亚洲电影免费观看| 成人精品在线观看| 精品视频在线播放免| 亚洲精品国产精品乱码不99按摩| 日韩精品免费在线| 久久久久久久久久久亚洲| 色综合久久88色综合天天看泰| 91精品啪在线观看麻豆免费| 日韩av影院在线观看| 久久久人成影片一区二区三区| 亚洲欧洲国产一区| 久久国产精品偷| 播播国产欧美激情| 精品一区二区三区三区| 91精品在线观看视频| 在线日韩精品视频| 国产精品在线看| 欧美激情奇米色| 欧美精品久久久久久久久久| 欧美日韩国产麻豆| 另类专区欧美制服同性| 久久视频国产精品免费视频在线| 日韩在线不卡视频| 亚洲最新在线视频| 午夜精品久久久久久久99热浪潮| 成人午夜激情免费视频| 久久影视电视剧免费网站清宫辞电视| 在线观看不卡av| 色婷婷综合久久久久中文字幕1| 亚洲男人天堂古典| 精品久久久久久久大神国产| 国产精品96久久久久久| 北条麻妃99精品青青久久| 欧美日韩亚洲精品一区二区三区| 日本最新高清不卡中文字幕| 91av在线免费观看视频| 国产精品亚洲精品| 色先锋久久影院av| 日韩欧美黄色动漫| 久久免费精品视频| 91九色视频在线| 这里只有精品在线观看| 一本色道久久88综合日韩精品| 成人国产亚洲精品a区天堂华泰| 国产精品jvid在线观看蜜臀| 欧美天堂在线观看| 国产成人精品a视频一区www| 91性高湖久久久久久久久_久久99| 亚洲天堂av在线免费| 97在线视频免费播放| 国产精品三级网站| 亚洲欧洲日本专区| 亚洲激情成人网| 久久成人综合视频| 亚洲va久久久噜噜噜久久天堂| 91精品免费看| 国产精品一区二区久久久久| 国产欧美一区二区三区四区| 色综合久久中文字幕综合网小说| 中文字幕日韩精品在线| 国内免费久久久久久久久久久| 自拍偷拍亚洲在线| 精品视频在线播放| 日韩黄色av网站| 日韩成人在线免费观看| 色偷偷噜噜噜亚洲男人的天堂| 91免费的视频在线播放| 国产99久久精品一区二区| 亚洲最大中文字幕| 亚洲国产精品va| 亚洲自拍小视频免费观看| 日韩精品中文字幕在线| 成人欧美一区二区三区黑人| 91产国在线观看动作片喷水| 欧美成aaa人片在线观看蜜臀| 国产成人综合精品| 国产精品久久久久久久久久免费| 91精品国产综合久久香蕉的用户体验| 欧美国产中文字幕| 国产精品va在线播放| 日本aⅴ大伊香蕉精品视频| 久久五月天色综合| 国产一区二区黑人欧美xxxx| 国产精品黄色av| 久久国产加勒比精品无码| 国产精品揄拍一区二区| 久久九九亚洲综合| 国产精品美乳在线观看| 久久精品小视频| 精品久久在线播放| 欧美精品在线免费| 日韩av在线免费看| 亚洲精品欧美一区二区三区| 色播久久人人爽人人爽人人片视av| 欧美片一区二区三区| 久久久久久12| 久久久最新网址| 日韩色av导航| 亚洲欧美一区二区三区在线| 亚洲图片制服诱惑| 亚洲摸下面视频| 国产日产久久高清欧美一区| 亚洲性夜色噜噜噜7777| 在线电影中文日韩| 久久午夜a级毛片| 日韩av片永久免费网站| 色先锋久久影院av| 久久久久久久97| 欧美性在线视频| 日韩h在线观看| 国产精品免费小视频| 亚洲欧美国产一区二区三区| 成人亚洲激情网| 精品国产老师黑色丝袜高跟鞋| 日韩av大片免费看| 亚洲欧美激情视频| 亚洲色图偷窥自拍| 热re99久久精品国产66热| 欧美亚洲另类激情另类| 国产在线观看一区二区三区| 亚洲国产欧美一区二区三区同亚洲| 性色av一区二区三区免费| 97国产在线视频| 欧美一级片久久久久久久| 亚洲第一在线视频| 精品亚洲国产视频| 国产免费一区视频观看免费| 日韩av手机在线观看| 亚洲成**性毛茸茸| 日韩中文字幕不卡视频| 精品国产乱码久久久久久天美| 麻豆一区二区在线观看| 欧美大秀在线观看| 国模极品一区二区三区| 91av网站在线播放| 亚洲国产日韩欧美在线图片|