国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

php+iframe實現無刷新上傳文件例子

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

上傳文件用得最多的是ajax了,現在這里我們可以使用iframe 模仿了,下面php粉絲網小伙伴就來為各位同學整理一個frame實現無刷新上傳文件例子,希望能幫助到各位朋友哦,使用label的for屬性來取代js的event轉移,解決IE下“SCRIPT5:拒絕訪問”的問題.

html代碼如下:

  1. <!DOCTYPE HTML> 
  2. <html lang="en-US"
  3. <head> 
  4. <meta charset="UTF-8"
  5. <title></title> 
  6. <script src="//code.jquery.com/jquery-1.11.0.min.js"></script> 
  7. <script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script> 
  8. <script> 
  9. // 當前上傳對象 
  10. var _current    = null; 
  11. // 上傳回調方法 
  12. function onUploadSuccess(info){ 
  13.     // 控制臺調試,可能是因為console沒定義導致IE無法使用此功能 
  14.     typeof console.dir!=='undefined' && console.dir(info); 
  15.     // 上傳成功 
  16.     if(typeof info.status!=='undefined' && typeof info.path!=='undefined' && info.status==1 && info.path!=''){ 
  17.         // 改變圖片src,實現實時預覽 
  18.         if(_current.find('img').size()>0) 
  19.             _current.find('img:eq(0)').prop('src', info.path); 
  20.         else 
  21.             _current.html('<img src="'+info.path+'" width="100%" height="100%" />'); 
  22.         // 返回 
  23.         return
  24.     } 
  25.     // 上傳失敗則提示錯誤信息 
  26.     alert(info.info); 
  27.     // 返回 
  28.     return
  29. $(function(){ 
  30.     $('label[for]').click(function(){ 
  31.         _current    = $(this); 
  32.         $('.uploadform')[0].reset(); 
  33.     });  //開源軟件:Vevb.com 
  34.     $('.uploadform input:file').change(function(){ 
  35.         $(this).parent().submit(); 
  36.     }); 
  37. }); 
  38. </script> 
  39. </head> 
  40. <body> 
  41.  
  42. <label for="photo1" style="border:1px solid #CCC; padding:2px; width:120px; height:80px; display:block;"></label> 
  43. <label for="photo1" style="border:1px solid #CCC; padding:2px; width:120px; height:80px; display:block;"></label> 
  44.  
  45. <form style="display:none;" class="uploadform" action="{:U('upload?callback=window.parent.onUploadSuccess')}" method="post" enctype="multipart/form-data" target="uploadiframe"
  46.     <input type="file" name="photo1" id="photo1" /> 
  47.     <iframe style="display:none;" name="uploadiframe"></iframe> 
  48. </form> 
  49.  
  50. </body> 
  51. </html> 

php處理程序,代碼如下:

  1. $retval = array('status'=>0, 'info'=>'''path'=>''); 
  2. if(/*upload success*/){ 
  3.     $retval['status'] = 1; 
  4.     $retval['path'] = 'somepath'
  5. }else
  6.     $retval['info'] = 'someerror'
  7. echo "<script>{$_GET['callback']}(".json_encode($retval).");</script>"
  8. exit

簡單總結:這個其實很簡單在表單中我們action設置為上傳php的模板文件,然后我們再在表單target打開方式設置為iframe的name即可.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 石河子市| 玉树县| 祁连县| 长泰县| 东乡族自治县| 本溪| 大丰市| 钦州市| 永康市| 静海县| 郑州市| 勐海县| 合作市| 烟台市| 清远市| 方正县| 呼伦贝尔市| 新竹县| 安康市| 揭东县| 泽库县| 灯塔市| 江川县| 凤台县| 平昌县| 沭阳县| 密山市| 黑龙江省| 自治县| 枣强县| 新平| 克山县| 红桥区| 安龙县| 盐源县| 县级市| 富宁县| 会泽县| 三门峡市| 芒康县| 随州市|