PHP圖片、文件批量上傳代碼__第1頁
PHP圖片、文件批量上傳代碼__第2頁
PHP圖片、文件批量上傳代碼__第3頁
PHP圖片、文件批量上傳代碼__第4頁
PHP圖片、文件批量上傳代碼__第5頁
已閱讀5頁,還剩6頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、PHP圖片、文件批量上傳代碼_ 不管是文件還是圖片批量上傳我們第一個(gè)是在html中做name=userfile這種數(shù)組變量,在php接受中我們做for ($_i=0; $_i$_cont; $_i+)遍歷這樣就可以實(shí)現(xiàn)文件批量上傳了,下面我來看一個(gè)實(shí)例 例子 代碼如下: ?php session_start(); ? !DOCTYPE html PUBLIC -/W3C/DTD XHTML 1.0 Transitional/EN l1/DTD/xhtml1-transitional.dtd html xmlns=l head meta http-equiv=Content-Type conte

2、nt=text/html; charset=utf-8 / titlePHP文件批量上傳/title style * margin:0; padding:0; list-style:none; .content width:400px; height:auto; margin:0 auto; margin-top:60px; padding-bottom:30px; background:#ffd3b6; border:dashed 1px #f90 .content h1 width:400px; height: 30px; line-height:30px; text-align:cent

3、er; font-family:微軟雅黑; font-size:14px; color:#000 .content .error width:300px; height:auto; line-height:30px; text-align:center; margin:0 auto; color:#f00 .content .con width:340px; height:auto; margin:0 auto; font-size:12px; .content #file width:280px; height:20px; border:solid 1px #ccc; background:

4、#fff; margin:10px 0px 6px 0; font-size:12px; .content #send width:60px; height:22px; border:solid 1px #ccc; background:#fff; font-size:12px; margin-top:10px; /style script type=text/javascript src=js/jquery.js/script script $(document).ready(function() $(#cont).val($(.file #file).size(); $(#send).eq

5、(0).click(function() var filesize=$(.file #file).size(); $(.file).append(input type=file name=userfile id=file/); $(#cont).val(filesize+1); ); ); /script /head body div h1PHP文件批量上傳/h1 div div ?php if ($_GETup=up) /防止重復(fù)提交 if ($_SESSIONfile=$_GETirand) $_cont=intval($_POSTcont); /將file框總數(shù)接收并轉(zhuǎn)換成整型 $_si

6、ze=20210; /設(shè)置限制文件大小 $_dir=pdir/; /文件保存名目 function size($_size) /推斷文件大小是否大于1024bit 假如大于,則將大小取值為KB,以此類推 if ($_size1024*1024) return round($_size/1024/1024,2). MB; else if ($_size1024) $_size=$_size/1024; return ceil($_size).KB; else return $_size. bit; /設(shè)置上傳圖片的類型,設(shè)置圖片上傳大小 $_upfiles = array(image/jpeg,

7、image/pjpeg,image/png,image/x-png,image/gif); /利用for循環(huán)上傳文件 for ($_i=0; $_i$_cont; $_i+) if (is_array($_upfiles) if (!in_array($_FILESuserfiletype$_i,$_upfiles) exit(請上傳格式為:jpg,png,gif的文件br /a href=pupload.php返回/a); /推斷文件大小 if ($_FILESuserfilesize$_i$_size) exit(上傳文件不能超過:.size($_size); /檢測文件是否已經(jīng)上傳 if

8、 ($_FILESuserfileerror$_i0) switch ($_FILESuserfileerror1) case 1: echo 上傳的文件超過了 php.ini 中 upload_max_filesize 選項(xiàng)限制的值; break; case 2: echo 上傳文件的大小超過了 HTML 表單中 MAX_FILE_SIZE 選項(xiàng)指定的值; break; case 3: echo 文件只有部分被上傳; break; case 4: echo 沒有文件被上傳; break; case 6: echo 找不到臨時(shí)文件夾; break; case 7: echo 文件寫入失敗; b

9、reak; exit; /獵取文件擴(kuò)展名 if (!is_dir($_dir) mkdir($_dir,0700); /生成隨筆數(shù) $_rand=mt_rand(0,100000); /獵取文件擴(kuò)展名 $_n=explode(.,$_FILESuserfilename$_i); /將文件名分割 $_file_len=count($_n); /返回?cái)?shù)組長度 /確保獵取的擴(kuò)展名是最終一個(gè).后面的 $_name=$_dir.time()._.$_rand.$_n$_file_len-1; /移動文件到指定的名目 if (is_uploaded_file($_FILESuserfiletmp_name

10、$_i) if (!move_uploaded_file($_FILESuserfiletmp_name$_i,$_name) exit(文件移動失敗); else echo 文件上傳勝利br /; echo 文件路徑:.$_name.br /; echo 文件大小:.size(filesize($_name); echo br /a href=pupload.php返回連續(xù)上傳/a; else exit(上傳的臨時(shí)文件不存在,無法將文件移動到指定文件夾); /銷毀session變量,有幾種方法 /第一種,銷毀全部session變量:session_destroy(); /其次種:銷毀單個(gè)如:

11、$_SESSIONfile= session_destroy(); exit; else exit(您已經(jīng)提交過了,不能重復(fù)提交br /a href=pupload.php返回/a); ? /div ?php $_irand=mt_rand(0,1000000); $_SESSIONfile=$_irand; ? form action=?up=upirand=?php echo $_irand; ? method=post enctype=multipart/form-data input type=hidden name=MAX_FILE_SIZE value=1000000 / inpu

12、t type=hidden name=cont value= id=cont / div input type=file name=userfile id=file/ input type=file name=userfile id=file/ input type=file name=userfile id=file/ input type=file name=userfile id=file/ /div br / input type=button name=send value= 添加一個(gè) id=send/ input type=submit name=send value= 點(diǎn)擊上傳

13、id=send/ /form /div /div /body 核心原理分析 在多文件上傳中我們前臺最重要的是 代碼如下: input type=file name=userfile id=file/ input type=file name=userfile id=file/ input type=file name=userfile id=file/ input type=file name=userfile id=file/ 這幾行代碼有詳情的伴侶會發(fā)覺name=userfile了,這個(gè)是以數(shù)組存儲了,這樣我們假如用法js也可以這樣增加就可以了,那么在php是如何獵取的呢 在多文件上傳中php處理是一個(gè)關(guān)鍵 代碼如下: for ($_i=0; $_i$_cont; $_i+) if (is_uploaded_file($_FILESuserfiletmp_name$_i) if (!move_uploaded_file($_FILESuserfiletmp_name$_i,$_name) exit(文件移動失敗); else echo 文件上傳勝利br /; echo 文件路徑:.$

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論