引導語:PHP表單在網頁中主要負責數據採集功能。以下是小編整理的PHP中的表單處理,歡迎參考閱讀!
PHP 超全局變量 $_GET 和 $_POST 用於收集表單數據(form-data)。
PHP - 一個簡單的 HTML 表單
下面的例子顯示了一個簡單的 HTML 表單,它包含兩個輸入字段和一個提交按鈕:
實例
Name:
E-mail:
當用戶填寫此表單並點擊提交按鈕後,表單數據會發送到名爲 "" 的 PHP 文件供處理。表單數據是通過 HTTP POST 方法發送的。
如需顯示出被提交的數據,您可以簡單地輸出(echo)所有變量。"" 文件是這樣的:
Welcome
Your email address is:
輸出:
Welcome John
Your email address is
使用 HTTP GET 方法也能得到相同的結果:
實例
Name:
E-mail:
"welcome_" 是這樣的:
Welcome
Your email address is:
上面的代碼很簡單。不過,最重要的內容被漏掉了。您需要對錶單數據進行驗證,以防止腳本出現漏洞。
注意:在處理 PHP 表單時請關注安全!
本頁未包含任何表單驗證程序,它只向我們展示如何發送並接收表單數據。
不過稍後的章節會爲您講解如何提高 PHP 表單的安全性!對錶單適當的安全驗證對於抵禦黑客攻擊和垃圾郵件非常重要!
GET vs. POST
GET 和 POST 都創建數組(例如,array( key => value, key2 => value2, key3 => value3, ...))。此數組包含鍵/值對,其中的.鍵是表單控件的名稱,而值是來自用戶的輸入數據。
GET 和 POST 被視作 $_GET 和 $_POST。它們是超全局變量,這意味着對它們的訪問無需考慮作用域 - 無需任何特殊代碼,您能夠從任何函數、類或文件訪問它們。
$_GET 是通過 URL 參數傳遞到當前腳本的變量數組。
$_POST 是通過 HTTP POST 傳遞到當前腳本的變量數組。
何時使用 GET?
通過 GET 方法從表單發送的信息對任何人都是可見的(所有變量名和值都顯示在 URL 中)。GET 對所發送信息的數量也有限制。限制在大於 2000 個字符。不過,由於變量顯示在 URL 中,把頁面添加到書籤中也更爲方便。
GET 可用於發送非敏感的數據。
註釋:絕不能使用 GET 來發送密碼或其他敏感信息!
何時使用 POST?
通過 POST 方法從表單發送的信息對其他人是不可見的(所有名稱/值會被嵌入 HTTP 請求的主體中),並且對所發送信息的數量也無限制。
此外 POST 支持高階功能,比如在向服務器上傳文件時進行 multi-part 二進制輸入。
不過,由於變量未顯示在 URL 中,也就無法將頁面添加到書籤。
提示:開發者偏愛 POST 來發送表單數據。