欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

提交表單后 PHP獲取提交內(nèi)容的實(shí)現(xiàn)方法

 更新時(shí)間:2016年05月25日 11:40:20   投稿:jingxian  
下面小編就為大家?guī)?lái)一篇提交表單后 PHP獲取提交內(nèi)容的實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

問(wèn)題:網(wǎng)頁(yè)上提交表單之后,PHP為什么不能獲取提交的內(nèi)容?然而在老版本的PHP上運(yùn)行卻正常。

新版的PHP已經(jīng)廢棄了原來(lái)的表單內(nèi)容處理方式,即不再把提交的表單的內(nèi)容直接復(fù)制到一個(gè)同名變量中。

解決辦法有四個(gè):

1. 修改php.ini,查找 register_globals,將其值修改為 On。這樣就可以像原來(lái)一樣,例如,提交的表單中包括一個(gè)名為"username"的變量,那么在php中就可以直接使用$username來(lái)訪問(wèn)該變量。但是,除非你要使用一段舊的代碼而考慮到兼容性問(wèn)題,否則不建議使用該方法。

2. 使用 $HTTP_GET_VARS、$HTTP_POST_VARS數(shù)組來(lái)訪問(wèn),例如寫(xiě)成$HTTP_POST_VARS["username"]的形式。不過(guò)該方法也不建議采用。

3. (推薦)使用 $_POST、$_GET等數(shù)組來(lái)訪問(wèn),例如寫(xiě)成 $_POST["username"]的形式。建議采用這種方法。

(推薦)使用 import_request_variables 函數(shù)。該函數(shù)將提交內(nèi)容導(dǎo)入到變量中。

例如 import_request_variables("gp", "rvar_");第一個(gè)參數(shù)可以選擇g,p,c,分別表示導(dǎo)入 GET,POST,COOKIE 變量;第二個(gè)參數(shù)為導(dǎo)入后的變量前綴。執(zhí)行上面的語(yǔ)句后即可使用 $rvar_username 來(lái)訪問(wèn)提交的 username 變量。使用import_request_variables("gp", "");可以兼容以前的PHP程序。
 
PHP $_GET 和 $_POST變量是用來(lái)獲取表單中的信息的,比如用戶輸入的信息。

PHP表單操作

在我們處理HTML表單和PHP表單時(shí),我們要記住的重要一點(diǎn)是:HTML頁(yè)面中的任何一個(gè)表單元素都可以自動(dòng)的用于PHP腳本:

表單舉例:

 

<html>
<body><form action="welcome.php" method="post">
Name: <input type="text" name="name" />
Age: <input type="text" name="age" />
<input type="submit" />
</form></body>
</html>

 

上述HTML頁(yè)面包含了兩個(gè)輸入框[input field]和一個(gè)提交[submit]按鈕。當(dāng)用戶將信息填寫(xiě)完畢并點(diǎn)擊提交按鈕時(shí),表單的數(shù)據(jù)將被發(fā)送至“welcome.php”文件。

“welcome.php”文件如下所示:

<html>
<body>Welcome <?php echo $_POST["name"]; ?>.<br />
You are <?php echo $_POST["age"]; ?> years old.</body>
</html> 

上述腳本將輸出下面這段結(jié)果:

Welcome John.

You are 28 years old.

PHP $_GET 和 $_POST變量將在下面作具體講解。

表單有效性驗(yàn)證[Form Validation]

用戶輸入的信息應(yīng)該盡可能的通過(guò)客戶端腳本程序(如:JavaScript)瀏覽器上驗(yàn)證;通過(guò)瀏覽器進(jìn)行信息的有效性驗(yàn)證可以提高效率并減少服務(wù)器的下載壓力。

如果用戶輸入的信息需要存進(jìn)數(shù)據(jù)庫(kù),那么你必須考慮在服務(wù)器端進(jìn)行有效性驗(yàn)證。在服務(wù)器上驗(yàn)證信息有效性的最好方法就是把表單信息發(fā)給當(dāng)前頁(yè)進(jìn)行驗(yàn)證,而不是調(diào)到其他頁(yè)面進(jìn)行驗(yàn)證。通過(guò)上述方法,如果表單存在錯(cuò)誤,用戶可以直接在當(dāng)前頁(yè)獲取錯(cuò)誤信息。這使得我們更容易發(fā)現(xiàn)存在的錯(cuò)誤信息。

PHP $_GET變量是通過(guò)get方法從表單中獲取“值”的。

$_GET變量

$_GET變量是一個(gè)包含名稱[name]和值[value]的數(shù)組(這些名稱和值是通過(guò)HTTP GET方法發(fā)送的,且都可以利用)。

$_GET變量使用“method=get”來(lái)獲取表單信息。通過(guò)GET方法發(fā)送的信息是可見(jiàn)的(它將顯示在瀏覽器的地址欄里),并且它有長(zhǎng)度限制(信息的總長(zhǎng)度不能超過(guò)100個(gè)字符[character])。

案例

<form action="welcome.php" method="get">
Name: <input type="text" name="name" />
Age: <input type="text" name="age" />
<input type="submit" />
</form>

當(dāng)用戶點(diǎn)擊“提交Submit”按鈕后,URL的方式顯示

“welcome.php”文件可以使用“$_GET”變量來(lái)獲取表單數(shù)據(jù)(注意:表單欄[form field]內(nèi)的名稱將會(huì)自動(dòng)作為“$_GET”數(shù)組中的ID關(guān)鍵詞):

Welcome <?php echo $_GET["name"]; ?>.<br />You are <?php echo $_GET["age"]; ?> years old!

為什么要使用“$_GET”?

要點(diǎn):當(dāng)使用“$_GET”變量時(shí),所有的變量名和變量值都會(huì)顯示在URL地址欄內(nèi);所以,當(dāng)你發(fā)送的信息包含密碼或是其他一些敏感信息時(shí),就不可以再使用這種方法。因?yàn)樗械男畔?huì)在URL地址欄內(nèi)顯示,所以我們可以把它作為標(biāo)簽放入收藏夾內(nèi)。這在很多情況下非常有用。

注意:如果需要發(fā)送的變量值過(guò)大,HTTP GET方法便不適用。發(fā)送的信息量不能超過(guò)100個(gè)字符。

$_REQUEST變量

PHP $_REQUEST變量包含$_GET, $_POST, and $_COOKIE的內(nèi)容。

PHP $_REQUEST變量可以用來(lái)獲取通過(guò)“GET”和“POST”這兩種方法發(fā)送的表單數(shù)據(jù)。

案例

Welcome <?php echo $_REQUEST["name"]; ?>.<br />You are <?php echo $_REQUEST["age"]; ?> years old!

PHP $_POST變量的作用是:獲取method = “post”方法發(fā)送的表單變量。

$_POST變量

$_POST變量是一個(gè)包含名稱[name]何值[value]的數(shù)組(這些名稱和值是通過(guò)HTTP POST方法發(fā)送的,且都可以利用)

$_POST變量使用“method=POST”來(lái)獲取表單信息。通過(guò)POST方法發(fā)送的信息是不可見(jiàn)的,并且它沒(méi)有關(guān)于信息長(zhǎng)度的限制。

案例

<form action="welcome.php" method="post">
Enter your name: <input type="text" name="name" />
Enter your age: <input type="text" name="age" />
<input type="submit" />
</form>

當(dāng)用戶點(diǎn)擊“提交Submit”按鈕后,URL中不會(huì)包含任何表單數(shù)據(jù)

“welcome.php”文件可以使用“$_POST”變量來(lái)獲取表單數(shù)據(jù)(注意:表單欄[form field]內(nèi)的名稱將會(huì)自動(dòng)作為“$_POST”數(shù)組中的ID關(guān)鍵詞):

Welcome <?php echo $_POST["name"]; ?>.<br />
You are <?php echo $_POST["age"]; ?> years old!

為什么要使用$_POST?

通過(guò)HTTP POST發(fā)送的變量不會(huì)在URL中顯示出來(lái)

變量的大小沒(méi)有限制

然而,因?yàn)樽兞坎荒茉赨RL中顯示出來(lái),所以也不可能把這個(gè)頁(yè)面作為標(biāo)簽儲(chǔ)存在收藏夾里。

$_REQUEST變量

PHP $_REQUEST變量包含$_GET, $_POST, and $_COOKIE的內(nèi)容

PHP $_REQUEST變量可以用來(lái)獲取通過(guò)“GET”和“POST”這兩種方法發(fā)送的表單數(shù)據(jù)。

案例

 

Welcome <?php echo $_REQUEST["name"]; ?>.<br />
You are <?php echo $_REQUEST["age"]; ?> years old!

以上這篇提交表單后 PHP獲取提交內(nèi)容的實(shí)現(xiàn)方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • CI框架(CodeIgniter)實(shí)現(xiàn)的導(dǎo)入、導(dǎo)出數(shù)據(jù)操作示例

    CI框架(CodeIgniter)實(shí)現(xiàn)的導(dǎo)入、導(dǎo)出數(shù)據(jù)操作示例

    這篇文章主要介紹了CI框架(CodeIgniter)實(shí)現(xiàn)的導(dǎo)入、導(dǎo)出數(shù)據(jù)操作,結(jié)合實(shí)例形式分析了CodeIgniter框架libraies中引用PHPExcel實(shí)現(xiàn)數(shù)據(jù)導(dǎo)入導(dǎo)出相關(guān)操作技巧,需要的朋友可以參考下
    2018-05-05
  • php獲取''/''傳參的值簡(jiǎn)單方法

    php獲取''/''傳參的值簡(jiǎn)單方法

    下面小編就為大家?guī)?lái)一篇php獲取'/'傳參的值簡(jiǎn)單方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-07-07
  • php腳本運(yùn)行時(shí)的超時(shí)機(jī)制詳解

    php腳本運(yùn)行時(shí)的超時(shí)機(jī)制詳解

    在我們平常的開(kāi)發(fā)中,也許曾經(jīng)都遇到過(guò)PHP腳本運(yùn)行超時(shí)的情況,當(dāng)遇到這種情況我們經(jīng)常會(huì)通過(guò)使用 set_time_limit(非安全模式),或修改配置文件并重啟服務(wù)器,或者修改程序減少程序的執(zhí)行時(shí)間,使其在允許的范圍之內(nèi),以解決此問(wèn)題。
    2016-02-02
  • 深入淺出php socket編程

    深入淺出php socket編程

    這篇文章主要介紹了深入淺出php socket編程,本文詳細(xì)的講解了socket的相關(guān)知識(shí)、PHP socket的編程實(shí)例行裝內(nèi)容,需要的朋友可以參考下
    2015-05-05
  • Yii2框架制作RESTful風(fēng)格的API快速入門(mén)教程

    Yii2框架制作RESTful風(fēng)格的API快速入門(mén)教程

    Yii提供了一整套用來(lái)簡(jiǎn)化實(shí)現(xiàn)RESTful風(fēng)格的WebService服務(wù)的API。這篇文章主要介紹了Yii2框架制作RESTful風(fēng)格的API快速入門(mén)教程的相關(guān)資料,需要的朋友可以參考下
    2016-11-11
  • laravel下trait的使用代碼實(shí)例詳解

    laravel下trait的使用代碼實(shí)例詳解

    這篇文章主要介紹了laravel下trait的使用代碼實(shí)例詳解,使用trait可以提高代碼的復(fù)用性,有感興趣的同學(xué)可以學(xué)習(xí)下
    2021-03-03
  • PHP錯(cuò)誤機(jī)制知識(shí)匯總

    PHP錯(cuò)誤機(jī)制知識(shí)匯總

    這篇文章主要介紹了PHP錯(cuò)誤機(jī)制知識(shí)匯總的相關(guān)資料,需要的朋友可以參考下
    2016-03-03
  • Laravel 6.2 中添加了可調(diào)用容器對(duì)象的方法

    Laravel 6.2 中添加了可調(diào)用容器對(duì)象的方法

    Laravel小組上周發(fā)布了v6.2.0 版本,接下來(lái)通過(guò)本文給大家分享Laravel 6.2 中添加了可調(diào)用容器對(duì)象的方法,需要的朋友可以參考下
    2019-10-10
  • Laravel統(tǒng)一錯(cuò)誤處理為JSON的方法介紹

    Laravel統(tǒng)一錯(cuò)誤處理為JSON的方法介紹

    這篇文章主要給大家介紹了關(guān)于Laravel統(tǒng)一錯(cuò)誤處理為JSON的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • 基于thinkphp6.0的success、error實(shí)現(xiàn)方法

    基于thinkphp6.0的success、error實(shí)現(xiàn)方法

    這篇文章主要介紹了基于thinkphp6.0的success、error實(shí)現(xiàn)方法,本文分步驟給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-11-11

最新評(píng)論