php输入get,PHP中GET方法和POST方法的使用(区别与联系)

GET 方法和POST 方法是http协议中最为常用的两个方法,所以理解这两个方法在PHP中的使用方法和他们的区别与联系十分重要。下面将通过一个实例来展示。

PHP中 GET 和 POST 的使用方法

首先写一个 HTML,里面包含两个表单 form,其中第一个 form 使用GET 方法;第二个使用POST 方法:

PHP中 GET 和POST 方法的区别与联系

GET 方法:

用户名:

密码:

POST 方法:

用户名:

密码:

浏览器显示效果如下:

1859

然后再写一个 test.php,因为上面的 HTML 中的 form 表单的 action 是调用 test.php 。该PHP中首先通过一个PHP的预定义变量$_SERVER[“REQUEST_METHOD”]判断请求使用的是GET 方法还是POST 方法,不同的方法执行不同的代码。

if($_SERVER["REQUEST_METHOD"] == "GET"){

$user = $_GET["user"];

$psw = $_GET["psw"];

echo "GET 方法得到的数据:";

echo "用户名:".$user."";

echo "密码:".$psw."";

}

else{

$user = $_POST["user"];

$psw = $_POST["psw"];

echo "POST 方法得到的数据:";

echo "用户名:".$user."";

echo "密码:".$psw."";

}

?>

然后来测试一下。

首先测试一下GET 方法:

在 GET 方法下的用户名输入“张三”,密码输入“abc123”,然后点击登录。

1859

点击登录之后的浏览器输出为:

1859

也就是说,test.php 已经得到了正确的数据,那它是如何得到的呢?

数据传输途径是这样的:

用户名对应的 Input 标签的 name 属性是 user,用户输入的用户名与 user 绑定;

然后通过 HTTP 协议的 GET 方法发送到服务器的 test.php;

而用户名数据就被存放到了预定义变量$_GET 数组中,其对应的索引就是 user;

所以在 test.php 中,HTML 表单所提交的用户名就可以通过$_GET[“user”]获取;

同理对应的密码数据也这样传递的。

同理,POST 方法的使用也是与 GET 的类似的:

在 POST 方法下的用户名输入“李四”,密码输入“cba321”,然后点击登录。

1859

点击登录后浏览器的输出结果如下:

1859

可以看到,POST 方法同样是可以得到表单提交的数据的。那么这两者区别在哪呢?

GET 和 POST 的区别

如果前面再对 GET 方法进行测试的时候仔细观察,URL 的变化,你就会发现,点击登录之后的 URL 是这样的:

1859

从 URL 中,可以清楚地读出表单所提交的数据。

而使用 POST 方法的 URL 是这样的:

1859

从 URL 的就可以看出明显的区别。GET 方法的数据是存放在 URL 中传送的,POST 的方法的数据则是存放在 HTTP 消息中的请求体中传送的。(此处可参考:超文本传输协议 HTTP 详解)

所以 GET 方法传送的数据是非常不安全的,数据被获取的成本非常低,并且 URL 是有长度限制的,所以传送的数据不能太大,数据类型仅限于 ASCII 字符。

GET 和 POST 的使用场景

所以 GET 的方法一般用在交互的场景(例如查询,搜索,读取),GET 方法传送的数据作为参数,然后得到对应参数的响应。

而 POST 方法则通常用来提交表单数据,或者传输一些需要加密的数据(比如密码,订单信息等)。

TOMORROW 星辰 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权

转载请注明原文链接:PHP 中 GET 方法和 POST 方法的使用(区别与联系)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值