[請益] 程式碼哪裡有錯?

看板PHP作者 (加油啊大妖人!)時間18年前 (2007/07/15 22:09), 編輯推噓7(707)
留言14則, 4人參與, 最新討論串1/1
我寫了一個 for 迴圈,要跑出數個上傳檔案的欄位, <input type=file name=logo_upload[] /> 然後有個發送的按鈕, <input name=change_ok type=submit value=確定修改 /> 如果按下按鈕,就會把上傳的檔名寫進資料庫, if($change_ok) { $total = count($number); for($i=0; $i<$total; $i++) { $tmp_name = $_FILES['$logo_upload[]']['name'][$i]; $sql = "UPDATE link SET logo_name='$tmp_name' WHERE number='$number[$i]'"; mysql_query ($sql,$db); } } 這個程式有經過簡化,我只是有問題的部份 post 出來, 我遇到的問題是,不知道為什麼 $tmp_name 這個變數一直接不到東西, 所以根本沒有東西寫進資料庫, 不是資料庫連線上的問題,那會是什麼問題呢? 請大大幫我解答一下,謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.172.64.200

07/15 22:47, , 1F
${tmp_name} 試試看
07/15 22:47, 1F

07/15 22:54, , 2F
應該不是樓上的問題...
07/15 22:54, 2F

07/15 22:55, , 3F
照php說明檔的寫法是$_FILES['logo_upload']['name'][$i]
07/15 22:55, 3F

07/16 10:36, , 4F
照改了還是不行...
07/16 10:36, 4F

07/16 11:10, , 5F
你FORM的ENCTYPE是?
07/16 11:10, 5F

07/16 11:41, , 6F
mutiple/data
07/16 11:41, 6F

07/16 11:41, , 7F
問題算解決了 我把寫法改成像 LPH 說的那樣
07/16 11:41, 7F

07/16 11:42, , 8F
$_FILES['$logo_upload']['name'] 多一個$也不行耶...
07/16 11:42, 8F

07/16 14:40, , 9F
嗯? 不是$_FILES['logo_upload'.$i]['name'] 嗎?
07/16 14:40, 9F

07/17 14:27, , 10F
基本上這一串file欄位是一個變數叫logo_upload
07/17 14:27, 10F

07/17 14:29, , 11F
所以不是.$i 應該是用陣列的方式去存取
07/17 14:29, 11F

07/17 14:30, , 12F
ENCTYPE似乎應該是要multipart/form-data才對...
07/17 14:30, 12F

07/17 18:47, , 13F
嗯 不過我習慣在FORM裡的INPUT再塞的時候 ID跟NAME就先給
07/17 18:47, 13F

07/17 18:48, , 14F
PHP的部份再用FOR去接 ~~ :P
07/17 18:48, 14F
文章代碼(AID): #16cYgqRZ (PHP)
文章代碼(AID): #16cYgqRZ (PHP)