做(zuò)自(zì)由與創造的先行(xíng)者

處理表單

PHP中文手冊

PHP 一(yī)個很(hěn)有用的特點體現在它處理 PHP 表單的方式。需要(yào)理解的非常重要(yào)的原理,是表單的任何元素都(dōu)在 PHP 腳本中自(zì)動生效。請(qǐng)參閱本手冊中“PHP 的外(wài)部變量”以獲取關于在 PHP 中使用表單的詳細信息及範例。以下(xià)是 HTML 表單的範例:

示例 #1 一(yī)個簡單的 HTML 表單

<form action="action.php" method="post"%gt;

<p%gt;姓名: <input type="text" name="name" /%gt;</p%gt;

<p%gt;年(nián)齡: <input type="text" name="age" /%gt;</p%gt;

<p%gt;<input type="submit" /%gt;</p%gt;

</form%gt;

該表單中并沒有什麽特殊的地(dì)方,其中沒有使用任何特殊的标識符。當用戶填寫了(le)該表單并點擊了(le)提交按鈕,頁面 action.php 将被調用。在該文件中,可(kě)以加入如(rú)下(xià)內(nèi)容:

示例 #2 打印來自(zì)表單的數(shù)據

你好,<?php echo htmlspecialchars($_POST['name']); ?%gt;。

你 <?php echo (int)$_POST['age']; ?%gt; 歲了(le)。

該腳本的輸出可(kě)能(néng)是:

你好,Joe。你 22 歲了(le)。

除了(le)htmlspecialchars() 和(hé) (int) 部分,這(zhè)段程序做(zuò)什麽用顯而易見(jiàn)。htmlspecialchars() 使得 HTML 之中的特殊字符被正确的編碼,從(cóng)而不會被使用者在頁面注入 HTML 标簽或者 Javascript 代碼。例如(rú) age 字段,我們明(míng)确知道(dào)他(tā)是一(yī)個數(shù)值,因此我們将它轉換為(wèi)一(yī)個int來自(zì)動的消除任何不必要(yào)的字符。也可(kě)以使用 PHP 的 filter 擴展來自(zì)動完成該工(gōng)作(zuò)。PHP 将自(zì)動設置 $_POST['name'] 和(hé) $_POST['age'] 變量。在這(zhè)之前我們使用了(le)超全局變量 $_SERVER,現在我們引入了(le)超全局變量 $_POST,它包含了(le)所有的 POST 數(shù)據。請(qǐng)注意我們的表單提交數(shù)據的方法(method)。如(rú)果使用了(le) GET 方法,那(nà)麽表單中的信息将被儲存到超全局變量 $_GET 中。如(rú)果并不關心請(qǐng)求數(shù)據的來源,也可(kě)以用超全局變量 $_REQUEST,它包含了(le)所有 GET、POST、COOKIE 和(hé) FILE 的數(shù)據。

也可(kě)以在 PHP 中處理 XForms 的輸入,盡管用戶可(kě)能(néng)更喜歡使用長(cháng)久以來支持良好的 HTML 表單。XForms 目前還不适合初學者使用,但(dàn)是用戶可(kě)能(néng)對它感興趣。手冊中在“特點”一(yī)章(zhāng)有一(yī)節對如(rú)何處理從(cóng) XForum 接收到的數(shù)據進行(xíng)了(le)簡短的介紹。

網站建設開(kāi)發|APP設計開(kāi)發|小程序建設開(kāi)發
下(xià)一(yī)篇:安裝前需要(yào)考慮的事項
上(shàng)一(yī)篇:實用的腳本