主頁(yè) > 知識(shí)庫(kù) > 實(shí)例講解PHP表單處理

實(shí)例講解PHP表單處理

熱門標(biāo)簽:Mysql連接數(shù)設(shè)置 銀行業(yè)務(wù) 團(tuán)購(gòu)網(wǎng)站 阿里云 Linux服務(wù)器 科大訊飛語(yǔ)音識(shí)別系統(tǒng) 服務(wù)器配置 電子圍欄

PHP 超全局變量 $_GET 和 $_POST 用于收集表單數(shù)據(jù)(form-data)。

PHP - 一個(gè)簡(jiǎn)單的 HTML 表單

下面的例子顯示了一個(gè)簡(jiǎn)單的 HTML 表單,它包含兩個(gè)輸入字段和一個(gè)提交按鈕:

實(shí)例

html>
body>

form action="welcome.php" method="post">
Name: input type="text" name="name">br>
E-mail: input type="text" name="email">br>
input type="submit">
/form>

/body>
/html>

當(dāng)用戶填寫此表單并點(diǎn)擊提交按鈕后,表單數(shù)據(jù)會(huì)發(fā)送到名為 "welcome.php" 的 PHP 文件供處理。表單數(shù)據(jù)是通過 HTTP POST 方法發(fā)送的。

如需顯示出被提交的數(shù)據(jù),您可以簡(jiǎn)單地輸出(echo)所有變量。"welcome.php" 文件是這樣的:

html>
body>

Welcome ?php echo $_POST["name"]; ?>br>
Your email address is: ?php echo $_POST["email"]; ?>

/body>
/html>

輸出:

Welcome John
Your email address is john.doe@example.com

使用 HTTP GET 方法也能得到相同的結(jié)果:

實(shí)例

html>
body>

form action="welcome_get.php" method="get">
Name: input type="text" name="name">br>
E-mail: input type="text" name="email">br>
input type="submit">
/form>

/body>
/html>

"welcome_get.php" 是這樣的:

html>
body>

Welcome ?php echo $_GET["name"]; ?>br>
Your email address is: ?php echo $_GET["email"]; ?>

/body>
/html>

上面的代碼很簡(jiǎn)單。不過,最重要的內(nèi)容被漏掉了。您需要對(duì)表單數(shù)據(jù)進(jìn)行驗(yàn)證,以防止腳本出現(xiàn)漏洞。

注意:在處理 PHP 表單時(shí)請(qǐng)關(guān)注安全!

本頁(yè)未包含任何表單驗(yàn)證程序,它只向我們展示如何發(fā)送并接收表單數(shù)據(jù)。

不過稍后的章節(jié)會(huì)為您講解如何提高 PHP 表單的安全性!對(duì)表單適當(dāng)?shù)陌踩?yàn)證對(duì)于抵御黑客攻擊和垃圾郵件非常重要!

GET vs. POST

GET 和 POST 都創(chuàng)建數(shù)組(例如,array( key => value, key2 => value2, key3 => value3, ...))。此數(shù)組包含鍵/值對(duì),其中的鍵是表單控件的名稱,而值是來(lái)自用戶的輸入數(shù)據(jù)。

GET 和 POST 被視作 $_GET 和 $_POST。它們是超全局變量,這意味著對(duì)它們的訪問無(wú)需考慮作用域 - 無(wú)需任何特殊代碼,您能夠從任何函數(shù)、類或文件訪問它們。

$_GET 是通過 URL 參數(shù)傳遞到當(dāng)前腳本的變量數(shù)組。

$_POST 是通過 HTTP POST 傳遞到當(dāng)前腳本的變量數(shù)組。

何時(shí)使用 GET?

通過 GET 方法從表單發(fā)送的信息對(duì)任何人都是可見的(所有變量名和值都顯示在 URL 中)。GET 對(duì)所發(fā)送信息的數(shù)量也有限制。限制在大于 2000 個(gè)字符。不過,由于變量顯示在 URL 中,把頁(yè)面添加到書簽中也更為方便。

GET 可用于發(fā)送非敏感的數(shù)據(jù)。

注釋:絕不能使用 GET 來(lái)發(fā)送密碼或其他敏感信息!

何時(shí)使用 POST?

通過 POST 方法從表單發(fā)送的信息對(duì)其他人是不可見的(所有名稱/值會(huì)被嵌入 HTTP 請(qǐng)求的主體中),并且對(duì)所發(fā)送信息的數(shù)量也無(wú)限制。

此外 POST 支持高階功能,比如在向服務(wù)器上傳文件時(shí)進(jìn)行 multi-part 二進(jìn)制輸入。

不過,由于變量未顯示在 URL 中,也就無(wú)法將頁(yè)面添加到書簽。

提示:開發(fā)者偏愛 POST 來(lái)發(fā)送表單數(shù)據(jù)。

接下來(lái)讓我們看看如何安全地處理 PHP 表單!

您可能感興趣的文章:
  • 實(shí)例講解PHP表單驗(yàn)證功能
  • php防止表單重復(fù)提交實(shí)例講解
  • php 提交表單 關(guān)閉layer彈窗iframe的實(shí)例講解
  • ThinkPHP防止重復(fù)提交表單的方法實(shí)例分析
  • thinkPHP5 ajax提交表單操作實(shí)例分析
  • PHP用正則匹配form表單中所有元素的類型和屬性值實(shí)例代碼
  • 微信小程序 PHP后端form表單提交實(shí)例詳解
  • 實(shí)例講解PHP表單

標(biāo)簽:蚌埠 棗莊 江蘇 衡水 大理 萍鄉(xiāng) 衢州 廣元

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《實(shí)例講解PHP表單處理》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266