看板 PHP 關於我們 聯絡資訊
試了很多方法,都是回傳成功,但找不到暫存檔. 大致上就是以下寫法 if (move_uploaded_file($_FILES['thefile']['tmp_name'], $_FILES['thefile']['name'])) { print '<p>successfully uploaded</p>'; print $trgt; } else 略... } echo "Select a file:"; echo "<form action='unit2.php' enctype='multipart/form-data' method='post'> <p><br /> <input type='hidden' name='MAX_FILE_SIZE' value='10000000' /> <input type='file' name='thefile' /><br /><br /> <input type='submit' name='submit' value='Upload !' /> </p> </form> </body> </html>" 隨便丟了一個小txt檔,執行後,顯示successfully uploaded 可是到$_FILES['thefile']['tmp_name']找不到暫存檔. 是php.ini設定問題嗎? -- test -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.114.53.194
LewisHamiltn:去看暫存目錄有沒有這檔案 沒暫存目錄的話開一個 10/12 12:02
guardlan:move_uploaded_file 這指令會檢查檔案是透過上傳方式上傳 10/12 12:33
guardlan:後,移動到 $_FILES['thefile']['name'] 這地方... 10/12 12:34
guardlan:都被搬走了你去找 $_FILES['thefile']['tmp_name'] 找的 10/12 12:34
guardlan:到就神了... 10/12 12:35
guardlan:另外... $_FILES['thefile']['name'] 這個變數裡面只會存 10/12 12:35
guardlan:檔名...沒有路徑...所以你這樣用的話 檔案應該會被搬到 10/12 12:36
guardlan:php工作目錄下.... 10/12 12:36
guardlan:正確的用法應該是給它個絕對路徑...這樣你才能指定要存放 10/12 12:38
guardlan:的路徑 10/12 12:38
我是用 echo $_FILES['thefile']['tmp_name']; 顯示暫存路徑 C:\Documents and Settings\xxxxx\Local Settings\Temp\php6C9.tmp 檔案總管找不到php6C9.tmp 使用move_uploaded_file()成功,檔案有copy出來,原來路徑要打兩個斜線. 感謝! ※ 編輯: GoodTauSo 來自: 140.114.53.194 (10/12 13:00)
guardlan:你是用win os喔...@@" 10/12 13:02
GoodTauSo:對啊 WinXP + Appserv 10/12 14:19
clubflymf:WINDOWS下 路徑請使用C:/xxxx/xxxx/xxx 10/13 11:22
※ 編輯: GoodTauSo 來自: 140.114.53.194 (10/13 11:47)