PHP利用3個預定義變數來快速取得表單數據

青灯夜游
發布: 2023-04-10 16:08:02
原創
4060 人瀏覽過

在web開發中,如果想要取得使用者提交的信息,往往需要使用到表單。利用一個form表單給用戶展示需要填寫的信息,然後用戶輸入信息後提交表單;表單提交數據後就需要獲取到數據進行處理。那麼要怎麼快速取得表單資料呢?其實PHP內建了3個預定義變數(又叫超全域變數)來獲取,本篇文件就來給大家具體介紹一下。

首先我們來了解表單的工作流程:

  • 首先表單必須展示給用戶,用戶輸入資訊後提交表單。

  • 每個表單都會指定一個網頁,使用者提交表單後,這個網頁會被載入並負責處理表單資訊。

例如下面user.html檔案中的form標籤內容,就是一個最簡單的表單

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>表单提交</title>
	</head>

	<body>
		<form action="user.php" method="">
			用户名: <input type="text" name="user"> <br><br>
			密 码: <input type="password" name="pwd"> <br><br>
			生 日: <input type="date" name="bday"><br><br>
			<input type="submit" value="提交数据">
		</form>
	</body>

</html>
登入後複製

form標籤的methods屬性是用來規定如何傳送表單數據,是使用get方式(method="get")還是post方式(method="post")。然後表單資料會傳送到 action 屬性所規定的頁面,我們這就是user.php頁面中進行處理。

而根據提交表單資料的方式不同,取得表單資料的方法也有所不同:get方式可以使用預先定義變數$_GET來取得;post方式可以使用預先定義變數$_POST來取得;如果不知道form 表單透過哪種方式提交數據,就可以使用預先定義變數$_REQUEST來獲取,它兩種方式的資料都可以取得。

下面就來一一了解:

1、使用預定義變數$_GET快速取得表單資料(form表單需要設定為method="get "

在程式的開發過程中,由於GET 方法提交的資料是附加到URL 上發送的,因此在URL 的網址列中將會顯示「URL 使用者傳遞的參數」類型的訊息,如下所示:

http://url?name1=value1&name2=value2 ...
登入後複製
  • name1、name2 為表單元素的名稱(有表單元素的name屬性設定),value1、value2 為表單元素的值。 url和表單元素之間以「?」隔開,而多個表單元素之間以「&」隔開,每個表單元素的格式都是「name= value”,固定不變。

我們加入user.html檔案的表單看看URL 的網址列

PHP利用3個預定義變數來快速取得表單數據

PHP利用3個預定義變數來快速取得表單數據

user.php檔案中可以直接使用預定義變數$_GET來取得數據,$_GET 全域變數是一個關聯數組,數組的鍵名為表單元素name 的值,數組的值為對應表單的值。 (註只要是URL 中的參數都可以使用$_GET 取得。)

<?php
var_dump($_GET);
?>
登入後複製

PHP利用3個預定義變數來快速取得表單數據

可以使用$_GET['鍵名']的方式來一一取得每個表單元素的值:

<?php
header("content-type:text/html;charset=utf-8");
echo "用户名为:".$_GET['user']."<br>生日为:".$_GET['bday'];
?>
登入後複製

PHP利用3個預定義變數來快速取得表單數據

2、使用預定義變數$_POST快速取得表單資料(form表單需要設定為method="post"

post方法不依賴URL,不會將傳遞的參數值顯示在網址列中。

$_POST 全域變數也是一個關聯數組,數組的鍵名為表單元素 name 的值,數組的值為對應表單的值。

<?php
header("content-type:text/html;charset=utf-8");
echo "用户名为:".$_POST['user']."<br>生日为:".$_POST['bday'];
?>
登入後複製

PHP利用3個預定義變數來快速取得表單數據

3、使用預定義變數$_REQUEST快速取得表單資料

$_REQUEST 全域變數是一個包含了  $_POST 、$_GET 和$_COOKIE 的數組,數組結構與$_POST 和$_GET 類似。

<?php
header("content-type:text/html;charset=utf-8");
var_dump($_REQUEST);
echo "用户名为:".$_REQUEST['user']."<br>生日为:".$_REQUEST['bday'];
?>
登入後複製

PHP利用3個預定義變數來快速取得表單數據

最後推薦給大家最新、最全面的《PHP影片教學》~快來學習吧!

以上是PHP利用3個預定義變數來快速取得表單數據的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!