- 企業官網怎麼(me)就(jiù)成(chéng)了企業的擺設? (62203)
- 企業網站建設最常見誤區分析 (60391)
- 關于網站關鍵詞選擇的一些技巧 (60234)
- 論網站頁面(miàn)靜态化和僞靜态的區别 (58287)
- 熱烈祝賀香港保險網制作完成(chéng)并交付上線 (57765)
解決ThinkPHP表單多文件上傳時(shí)出現的不對(duì)應問題
Time:2014/08/05 23:19:21 Click:
ThinkPHP是一個了不起(qǐ)的框架,這(zhè)點不可置否,不過(guò)在用他的多文件上傳時(shí),卻出現了一些問題,什麼(me)問題呢?那就(jiù)是當一個表單裡(lǐ)有幾個不同名的文件上傳時(shí),當修改時(shí),如果其中一個不上傳,就(jiù)會(huì)亂,這(zhè)是很不好(hǎo)的,于是就(jiù)自己寫了一個方法,請往下看。
isset($_POST['id']) ? $id = $_POST['id'] : $this->error('非法操作'); $pic1 = M('article')->where(array('id'=>$id))->getField('pic1');//獲取原文件 $pic2 = M('article')->where(array('id'=>$id))->getField('pic2');//獲取原文件 $pic3 = M('article')->where(array('id'=>$id))->getField('pic3');//獲取原文件 $info = $upload->getUploadFileInfo();//獲取上傳信息集合 foreach ($info as $key => $value) { switch ($value['key']) { case 'pic1': $pic1=$value['savename']; break; case 'pic2': $pic2=$value['savename']; break; case 'pic3': $pic3=$value['savename']; break; } }
現在來解釋一下,原理是通過(guò)獲取到的$info進(jìn)行$key值進(jìn)行循環對(duì)比。當$info裡(lǐ)有值與表單值一樣(yàng)時(shí),即進(jìn)行上傳,同時(shí),將(jiāng)原文件名進(jìn)行重寫,達到更新目的。這(zhè)樣(yàng)就(jiù)達到了當所有上傳文件沒(méi)有同時(shí)上傳時(shí),不出現上傳對(duì)應問題,希望對(duì)大家有用,如有疑問,歡迎聯系我們。
上一篇:ThinkPHP 郵件處理類詳解
熱門文章