2016-04-12 42 views
2

我有一個將請求發送到我的服務器應用程序,你可以看到下面的代碼:訪問形式上傳的文件信息

Method: POST 
multipart/form-data; boundary=—————————14737809831466499882746641449 
Content-Type Content-Disposition: form-data; name=\'Stackoverflow\'; filename=\'.%@\'\r\n 
Content-Type: application/octet-stream\r\n\r\n 

這個請求的作品,我收到我的PHP服務器一個真正的要求,問題是我不知道用PHP捕獲這些值,因爲命令$ _GET ['名稱']$ _POST ['name']不起作用。

我該如何處理這個參數?

+0

儘量讓'$ _REQUEST [「名」]' – KubiRoazhon

+1

的'內容Type'頭似乎是錯誤。查看http://stackoverflow.com/questions/14962592/whats-content-type-value-within-a-http-request-when-uploading-content查看帶有文件上傳的內容類型。 – bspellmeyer

+0

你在表單中發佈什麼內容?你想上傳文件嗎? –

回答

0

這並不能解決問題。

你打開網站這樣:http://www.example.com/index.php?getvar=test

或類似的:http://www.example.com/index.php

在第二種情況下,因爲在第一種情況下沒有變量

不能得到$ _GET值

嘗試檢查是否存在這樣的變量:if(isset($_GET['getvar']))

,並檢查$ _POST變量在使用前存在。

如果不是,你應該查看你的代碼並糾正你的錯誤。

如果您需要更多幫助,請在這裏發佈php代碼。

+0

打開像index.php – Lacrifilm

+0

然後$ _GET將無法正常工作。 $ _GET在我的第一個示例鏈接中獲取「=」之後的值,「=」之前的值位於「[]」括號內。^^ – DragonSkills99

+0

嘗試在添加「?variable = value」後向您發送值index.php ^^ – DragonSkills99

0

你應該看看$ _FILES ['filename']('filename'是包含文件的參數的名稱),會有關於上傳文件的信息。

它包含數組,您可能需要'tmp_name'鍵($ _FILES ['filename'] ['tmp_name']),其中包含存儲文件的臨時位置。這個臨時文件將在請求結束後被刪除,所以你會想在其他地方移動它。

不知道,如果文檔是在這種情況下有益的,但在那裏,他們分別是:

http://php.net/manual/en/reserved.variables.files.php