曲径通幽论坛

标题: $_GET 和 $_REQUEST 变量 [打印本页]

作者: beyes    时间: 2011-4-22 20:24
标题: $_GET 和 $_REQUEST 变量
$_GET 变量用于收集来自 method="get" 的表单中的值。

$_GET 变量是一个数组,内容是由 HTTP GET 方法发送的变量名称和值。

$_GET 变量用于收集来自 method="get" 的表单中的值。从带有 GET 方法的表单发送的信息,对任何人都是可见的(会显示在浏览器的地址栏),并且对发送的信息量也有限制(最多 100 个字符)。

下面是一个完整的示例。

首先建立一个form.html 的页面:

<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=utf-8">
<TITLE>Simple Form</TITLE>
</HEAD>
<BODY>
<form action = "welcome.php" method="get">
Name: <input type="text" name="name" />
Age: <input type="text" name="age" />
<input type="submit" />
</form>
</BODY>
</HTML>


名为 welcome.php 的代码如下:
[PHP] 纯文本查看 复制代码
Welcome <?php echo $_GET["name"]; ?>.<br /> 
You are <?php echo $_GET["age"]; ?> years old!


在浏览器里浏览 form.html 时,会看到两个文本输入框,在里头输入名字和年龄并提交后,会转到 welcome.php 进行处理,而 welcom.php 就是利用 _GET 获取了 get 方法收集到的两个数据(表单域的名称会自动成为 $_GET 数组中的 ID 键),如:
Welcome beyes.
You are 90 years old!

另外观察浏览器地址栏会看到:http://192.168.52.144/php/welcome.php?name=beyes&age=90

为什么使用 $_GET?
注释:在使用 $_GET 变量时,所有的变量名和值都会显示在 URL 中。所以在发送密码或其他敏感信息时,不应该使用这个方法。不过,正因为变量显示在 URL 中,因此可以在收藏夹中收藏该页面。在某些情况下,这是很有用的。

释:HTTP GET 方法不适合大型的变量值;值是不能超过 100 个字符的。

PHP 的 $_REQUEST 变量包含了 $_GET, $_POST 以及 $_COOKIE 的内容。
PHP 的 $_REQUEST 变量可用来取得通过 GET 和 POST 方法发送的表单数据的结果。

比如:
[PHP] 纯文本查看 复制代码
 
Welcome <?php echo $_REQUEST["name"]; ?>.<br />
You are <?php echo $_REQUEST["age"]; ?> years old!





欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) Powered by Discuz! X3.2