2013-12-14 78 views
0

我在我的HTML表單中使用method =「GET」。有沒有辦法從臨時文件夾(在Linux中)獲取臨時文件的名稱並將其移至某個自制文件夾?我試過$ _FILES ['file'] ['tmp_name'],但它不適用於get方法。從查詢字符串獲取值我使用了$ _GET方法。但它沒有獲得臨時文件名。如何從php的temp文件夾中獲取上傳的文件名?

+0

閱讀[文件](http://www.php.net/manual/en/reserved.variables.files.php) – Michel

+0

手冊我已經使用$ _FILES,但它沒有顯示任何值。 – goodie

+0

另外我使用php5。 – goodie

回答

0

文件上傳是不可能用GET方法,所以你必須使用POST方法。

這是不是的一個PHP問題。 RFC 1867在發送文件時指定表單enctype「application/x-www-form-urlencoded」。但只有使用POST時纔可以設置enctype。此外,文件可能非常大,所以URL的查詢字符串會太長。

事實上,如果您使用GET,您的瀏覽器將永遠不會向服務器發送任何文件。它將文件輸入字段視爲普通文本字段併發送文件名稱。

+0

確定。如果我使用post方法,那麼有沒有辦法從查詢字符串中獲取值?因爲當我使用POST方法時,我無法做到這一點。 – goodie

+0

如果它們真的被髮送到查詢字符串中,您還可以通過$ _GET ['name']來訪問它們。如果您將表單類型更改爲POST並且以這種方式提交文本輸入,則它們將不再在$ _GET中可用,而是在$ _POST中。如果你不確定,你可以試試$ _REQUEST ['name']。 –

+0

如果我不確定什麼? – goodie

0

您是否在表單中設置了屬性enctype =「multipart/form-data」?如果不這樣做,有在$ _FILES

但是沒有數據,建議使用POST用於插入,並獲得取數據

+0

是的。我有.... – goodie

+0

我知道它更好地使用後,但因爲我必須閱讀查詢字符串,通過$ _GET完成。這就是爲什麼我使用GET。 – goodie

+0

爲什麼你需要GET方法來獲取數據?您可以使用GET獲取您的查詢字符串並使用POST發送您的數據我認爲您不需要用於檢索數據的表單 –

相關問題