看板 PHP 關於我們 聯絡資訊
我自己寫了一個上傳前先比對看有沒有檔名一樣的,因為如果檔名一樣不比對他就直接 覆蓋原有的資料了,雖然底下寫法有成功,但他要資料上傳完才會比對,如果傳了一個 5MB的資料,花了半個多鐘頭,結果卻呈現檔案已存在,那不被追殺才怪呵呵,這樣要怎 麼修改成還沒上傳就會先比對完成呢? 謝謝 對了為何他會上傳完才比對,關鍵在哪裡呢? upload.htm <FORM method=post action=upload.php enctype="multipart/form-data"> <p>選取檔案: <INPUT type=file name=aaa> <p><INPUT type=submit value=傳送> </FORM> upload.php <?php $a1=exec("ls $aaa_name;echo $?"); if ( $a1!=0 ){ echo " <P> $aaa <P> $aaa_name <P> $aaa_size <P> $aaa_type "; copy($aaa, "$aaa_name"); } else { echo "檔案已存在"; } ?> -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.244.15.200 ※ 編輯: piligo 來自: 210.244.15.200 (08/14 23:20)
alpe:檔名可以自己取啊. $newFN = md5($filename+time()) 08/14 23:29
piligo:恩來玩玩看,可是如果檔名想原封不動呢? 08/14 23:52
alexblue:如果檔名為中文 要記得反斜線處理 以免上傳失敗!! 08/15 00:20
cttlee:原始存資料庫 下載的時候再變回來 08/15 07:50
alpe:下載用 header()+readfile() 08/15 16:14
piligo:謝謝以上各位,不過我的問題真的沒辦法上傳前就做比對嗎? 08/15 18:37
ottokang:AJAX是你的好朋友 08/16 01:51
leecoco:我是只要上傳就依照規則重新命名 EX 取時間 08/16 09:32
piligo:leecoco的問題可參考alpe的做法 08/16 23:29