国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

提交表單后 PHP獲取提交內容的實現方法

2024-05-04 23:46:38
字體:
來源:轉載
供稿:網友
下面小編就為大家帶來一篇提交表單后 PHP獲取提交內容的實現方法。小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
 

問題:網頁上提交表單之后,PHP為什么不能獲取提交的內容?然而在老版本的PHP上運行卻正常。

新版的PHP已經廢棄了原來的表單內容處理方式,即不再把提交的表單的內容直接復制到一個同名變量中。

解決辦法有四個:

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

2. 使用 $HTTP_GET_VARS、$HTTP_POST_VARS數組來訪問,例如寫成$HTTP_POST_VARS["username"]的形式。不過該方法也不建議采用。

3. (推薦)使用 $_POST、$_GET等數組來訪問,例如寫成 $_POST["username"]的形式。建議采用這種方法。

(推薦)使用 import_request_variables 函數。該函數將提交內容導入到變量中。

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

PHP表單操作

在我們處理HTML表單和PHP表單時,我們要記住的重要一點是:HTML頁面中的任何一個表單元素都可以自動的用于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頁面包含了兩個輸入框[input field]和一個提交[submit]按鈕。當用戶將信息填寫完畢并點擊提交按鈕時,表單的數據將被發送至“welcome.php”文件。

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

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

上述腳本將輸出下面這段結果:

Welcome John.

You are 28 years old.

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

表單有效性驗證[Form Validation]

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

如果用戶輸入的信息需要存進數據庫,那么你必須考慮在服務器端進行有效性驗證。在服務器上驗證信息有效性的最好方法就是把表單信息發給當前頁進行驗證,而不是調到其他頁面進行驗證。通過上述方法,如果表單存在錯誤,用戶可以直接在當前頁獲取錯誤信息。這使得我們更容易發現存在的錯誤信息。

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

$_GET變量

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

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

案例

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

當用戶點擊“提交Submit”按鈕后,URL的方式顯示

“welcome.php”文件可以使用“$_GET”變量來獲取表單數據(注意:表單欄[form field]內的名稱將會自動作為“$_GET”數組中的ID關鍵詞):

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

為什么要使用“$_GET”?

要點:當使用“$_GET”變量時,所有的變量名和變量值都會顯示在URL地址欄內;所以,當你發送的信息包含密碼或是其他一些敏感信息時,就不可以再使用這種方法。因為所有的信息會在URL地址欄內顯示,所以我們可以把它作為標簽放入收藏夾內。這在很多情況下非常有用。

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

$_REQUEST變量

PHP $_REQUEST變量包含$_GET, $_POST, and $_COOKIE的內容。

PHP $_REQUEST變量可以用來獲取通過“GET”和“POST”這兩種方法發送的表單數據。

案例

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

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

$_POST變量

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

$_POST變量使用“method=POST”來獲取表單信息。通過POST方法發送的信息是不可見的,并且它沒有關于信息長度的限制。

案例

<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>

當用戶點擊“提交Submit”按鈕后,URL中不會包含任何表單數據

“welcome.php”文件可以使用“$_POST”變量來獲取表單數據(注意:表單欄[form field]內的名稱將會自動作為“$_POST”數組中的ID關鍵詞):

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

為什么要使用$_POST?

通過HTTP POST發送的變量不會在URL中顯示出來

變量的大小沒有限制

然而,因為變量不能在URL中顯示出來,所以也不可能把這個頁面作為標簽儲存在收藏夾里。

$_REQUEST變量

PHP $_REQUEST變量包含$_GET, $_POST, and $_COOKIE的內容

PHP $_REQUEST變量可以用來獲取通過“GET”和“POST”這兩種方法發送的表單數據。

案例

 

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

 

以上這篇提交表單后 PHP獲取提交內容的實現方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VeVb武林網。



注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 乡宁县| 班戈县| 长垣县| 东乌| 体育| 轮台县| 桓仁| 秀山| 江北区| 太和县| 虎林市| 思茅市| 会理县| 罗城| 托克逊县| 和林格尔县| 韶山市| 盐亭县| 汽车| 曲沃县| 朔州市| 桃园县| 普洱| 清镇市| 五指山市| 河池市| 普兰店市| 大宁县| 泌阳县| 青河县| 临西县| 云阳县| 杂多县| 库车县| 宁海县| 高唐县| 宁海县| 彩票| 铜梁县| 克山县| 聂拉木县|