PHP-表单提交数据的两种方式

Naomi ·
更新时间:2024-09-20
· 695 次阅读

1.3 表单提交数据的两种方式 1.3.1 两种方式

1、get

2、post

1.3.2 区别

1、外观上看

​ get提交在地址上可以看到参数

在这里插入图片描述

​ post提交在地址栏上看不到参数

在这里插入图片描述

2、安全性

​ get不安全

​ post安全

3、提交原理

​ get提交是参数一个一个的提交

​ post提交是所有参数作为一个整体一起提交

4、提交数据大小

​ get提交一般不超过255个字节

​ post提交的大小取决于服务器

// 在php.ini中,可以配置post提交的大小 post_max_size = 8M

5、灵活性

​ get很灵活,只要有页面的跳转就可以传递参数

​ post不灵活,post提交需要有表单的参与

1、 html跳转 跳转 2、JS跳转 location.href='index.php?name=tom&age=20'; location.assign('index.php?name=tom&age=20'); location.replace('index.php?name=tom&age=20'); 3、PHP跳转 header('location:index.php?name=tom&age=22')

小结:

GET POST
外观上 在地址上看到传递的参数和值 地址栏上看不到数据
提交数据大小 提交少量数据,不同的浏览器最大值不一样,IE是255个字符 提交大量数据,可以通过更改php.ini配置文件来设置post提交数据的最大值
安全性
提交原理 提交的数据和数据之间在独立的 将提交的数据变成XML格式提交
灵活性 很灵活,只要有页面的跳转就可以get传递数据 不灵活
1.4 服务器接受数据的三种方式

通过名字获取名字对应的值

$_POST:数组类型,保存的POST提交的值 $_GET:数组类型,保存的GET提交的值 $_REQUEST:数组类型,保存的GET和POST提交的值

例题:

HTML页面

语文:
数学:

跳转

PHP页面

<?php //post数组中不为空 if(!empty($_POST)) { echo '这是post提交的数据
'; echo '语文:'.$_POST['ch'],'
'; echo '数学:'.$_POST['math'],'
'; } echo '
'; //获取get提交的数据 if(!empty($_GET)){ echo '这是get提交的数据
'; echo '语文:'.$_GET['ch'],'
'; echo '数学:'.$_GET['math'],'
'; } echo '
'; //既能获取get又能获取post提交的数据 echo $_REQUEST['ch'],'
'; echo $_REQUEST['math'];

思考题

在一个请求中,既有get又有post,get和post传递的名字是一样的,这时候通过$_REQUET获取的数据是什么?

答:结果取决于配置文件

request_order = "GP" # 先获取GET,在获取POST值

例题

<?php if(!empty($_POST)){ echo '姓名:'.$_REQUEST['username'],'
'; } ?> 姓名:
分析:先获取GET的username,再获取post的username,后面的将前面的值覆盖

小结:

1、在开发的时候,如果明确是post提交就使用$_POST获取,如果明确get提交就用$_GET获取

2、request获取效率低,尽可能不要使用,除非提交的类型不确定的情况下才使用。


作者:cwl_java



表单提交 表单 数据 PHP

需要 登录 后方可回复, 如果你还没有账号请 注册新账号