当前课程知识点:PHP程序设计 > 会话管理 > 会话表单 > 超全局变量3
刚才的那个例子其实就是一个标准的POST
对吧
那么关于GET和POST究竟有什么样差别
从网上盗了一篇文章
这个文章后面会发给大家的
对吧发给大家
我觉得这篇文章写的特别好玩
里面还有很多很Q的图
我们可以一起来看下对吧
GET和POST是HPPT请求的两种基本方法对吧
最直观的感受就是我刚才说的
GET把参数放在哪里面
URL里面
而POST那么通过的是requestbody这种方式
来传递参数
所以你用POST传递的时候
比如说刚才大家做过这个题目给、、对吧
做过的这个题目你看
我们把数据都读取出来了
这个URL上能看见吗
你是看不见的
对不对你是看不见的
所以呢
其实它在我们的一些想应头里面
还是有的对吧
它是藏在里面的
所以呢
你知道面试的时候
是很容易问到GET和POST有什么样的区别的
对吧
你可能会给个标准答案对吧
这标准答案有这些
什么退回是无害
POST会再次请求对吧
那么URL地址会Boolmark而POST不会对吧
那么GET就只能使用由url编码
POST使用多种方式诸如此类的对吧
诸如此类的
那么最重要的一点就是我刚才说的
GET比POST不安全
因为参数直接暴露在url上面
所以不能用来传递敏感的信息
对吧敏感的信息
但是呢
有可能公司说这个不是他要的答案
所以呢这个地方
就底下的这一段描述就在描述
究竟在http中GET和POST到底干了些什么事情
对吧
它们两个其实都是TCP的一个链接
干的事情是一模一样的
但是呢
它们的差别在哪呢
你可以用这段话来理解
就是说我们的TCP就像一个汽车
要用它来传输数据
但是如果路上的汽车都长一样的话
计算机就不能判断了哪个比较重要一些
所以交通规则http就诞生了对吧
然后http给汽车定个位说
谁是GET
谁是POST
谁是什么
那么执行GET的时候
我们汽车上填上GET的标签
也就是method
你要设为GET
然后把传输的数据放在车顶上
是不是就放在我们的这个URL上面了
放在URL上面了
然后呢
如果是POST的话
那你在车上贴个POST标签
但是就把货物放在车厢里面
说白了就是藏起来了
但是你要正儿八经找还是能找到的对吧
那么这个就是一个标准
那么还有一个就是关于参数
那么我们的参数是什么呢
就是一个运输公司
不同的浏览器发出的http请求
和服务器接收的http请求
它们是不同的公司
理论上你可以给车顶无限的堆货物
咱们的这个GET传参像刚才这个地方
我只传了一个参数
我通过这个符号就是加这样子的一个连接符
我就可以再传一个比如说pod等于456
我还可以继续传
再继续传什么怕死
path等于789
还可以不断的往下加对吧
你GET传不一定只传一个
可以传多个对吧可以传多个
但是呢
这个运输公司觉得你这样的传不合适呀
对不对不合适
所以一般情况下
浏览器会限制url的长度在2k个字节
所以你想想看你不是GET传参
都是在这上加吗
它就有一个限制是2k对吧
那么服务器最多处理一个64k大小的url
如果超过的话就恕不处理了
所以你使用GET服务的时候
那么有的时候它有可能没有被接收到
那么这个地方还说了
就是GET和POST
还有一些浏览器服务器的限制之外
它还有一些东西的吧
就是关于产生几个数据包
GET只产生一个TCP的数据包
POST产生两个
那么GET是怎么玩的呢
GET就是把汽车跑一趟货送到
POST的是怎么样
先去给服务器打声招呼说
我要什么货
然后呢
你再跑回去把货拉出来
所以才要产生两个TCP包
那么产生两个某种程度上
咱们的POST时间消耗就要多一些
所以呢看起来GET比POST更有效
但是呢
我们是不是说了
在网络环境好的情况下
发一次包和发两次包时间差别
基本上可以忽视
而且网络环境差的话
你发两次包是不是更安全
你就保证对方一定能接收到了
对方接收到的概率更大一些
而且就是我们说的
我们的POST方式咱们相对来说更安全一些
可以用于传递敏感信息对吧
所以虽然有团队推荐说GET替换POST
来优化网站性能
但是呢
就认为这是一个坑跳入要谨慎
所以各位同学咱们在做大部分的题目的时候
都是用POST
但是在后面的题目中一定会遇到GET传参
因为我们会遇到有一些不重要的信息
我们用POST太麻烦了
我们用GET
因为GET简单呀
GET口只需要在URL这样一做就可以了
只需要问号隔开
前面这是参数名后面这是参数的值
如果要多个参数用这样的连接符连接起来
非常容易去传递
不敏感的数据
我们可以用这种方式去做一个传递对吧
这是GET和POST的一个差别
那么讲到这儿介绍咱们这节课
忘了还有个REQUEST
接着把REQUEST讲了
刚才我们说了GET说了POST
那么REQUEST是什么呢
就是通过一种方式同时获取GET和POST数据
我其实刚才也是说到了
我们说我们后面的题目一定会遇到
比如说有敏感数据
有各位同学的用户名密码
还有不敏感的数据
比如说翻页的页码这样子的东西
那么这个东西如果你要同时获取的话
你可以直接使用这个$_REQUEST
用它的话可以保存各种方式
传递给PHP脚本变量的数组
那么就是GET方式它也存
POST方式也存
而且COOKIK方式的它也存都存
但是它是不是也有问题
就是你的出现顺序
出现顺序是php的ini文件里面
规定了一个顺序
那么默认情况下
我们是先它再GET
再POST的再COOKIK再SERVER
但是你需要注意你的这个地方
我们刚才说了
GET是不是也有参数
POST它也有参数
千万不能重名了
因为一旦成名了
解析后新值就会覆盖旧值
比如说我们GET在前面
咱们在这个地方是不是也有一个name
我们如果用REQUEST的方式的话
这个地方也有一个name
但是我们的这个页面里是不是也有一个name
那么GET的先获取了POST后获取了
那你们后面的POST就直接
把前面的这个name就给替代掉了
所以说它在使用中你需要注意一个顺序
和重名的问题对吧
那么而且就是我们说REQUEST里面
通过GET方式可以被远程用户去篡改
而降低安全性
所以呢
我们不能确定是用GET还是POST的时候
才会用REQUEST
如果你很确定的话
你还是规规矩矩的
该用POST的POST
该用GET用GET
关于这个篡改url对吧
现在我觉得应该是不太可能可以这么做的
比如说各位同学登录教务管理系统
对吧
你们可以去研究一下
登录教务管理系统
它有没有GET传参对吧
如果GET传参
比如说学号20的
我进去了之后发现我的学号
比如说扣的学号是20传递在这个里面了
理论上各位同学用户名密码登录
你是不是只能看你自己的信息
但是如果我发现它是GET传参
我又特别想看一下19号的信息的时候
我可以怎么做呢
我是不是在url里面直接改就行了
直接改就可以把19找出来了
就可以把19找出来了
所以呢GET传参非常的不安全
敏感信息绝对不可以用GET去传递
对吧
绝对不可以用GET去传递
这点一定要注意对吧一定要注意
-PHP概述
-PHP概述--作业
-开发环境搭建
--开发环境搭建一
--开发环境搭建二
--集成环境的安装
-开发环境搭建--作业
-PHP语法入门
--语法入门一
--语法入门二
-PHP数据的输出
--数据输出
-PHP数据类型
--数据类型1
--数据类型2
--数据类型3
--数据类型4
--数据类型5
--数据类型6
-PHP常量和变量
--常量和变量1
--常量和变量2
--常量和变量3
--常量和变量4
--常量和变量5
--常量
-PHP常量和变量--作业
-PHP的运算符和表达式
--运算符和表达式1
--运算符和表达式2
--运算符和表达式3
-PHP语法基础--PHP的运算符和表达式
-条件判断语句
--条件判断语句1
--条件判断语句2
--条件判断语句3
--条件语句
-循环控制语句
--循环控制语句
--循环语句练习1
--循环语句练习2
-跳转语句和终止语句
--跳转和终止语句
-流程控制
-数组概述和分类
--数组概述和分类
--PHP数组分类
-数组创建、删除和修改
--数组创建
-数组遍历
--数组遍历1
--数组遍历2
--数组遍历3
--数组遍历4
--数组遍历5
--foreach
-数组相关函数
--数组相关函数1
--数组相关函数2
--数组相关函数3
--数组相关函数4
--数组相关函数5
--数组相关函数6
--数组函数的练习
-PHP数组--作业
-分页函数的应用
-函数的定义与调用
--函数定义与调用
-函数参数传递
--函数参数传递1
--函数参数传递2
-自定义函数总结和实验
-常用变量和数学函数
--变量和数学函数库
--数学函数实验
--数学函数
-日期和时间函数
--日期时间函数1
--时间日期函数2
--倒计时
-PHP函数--作业
-字符串概述
--字符串特点
--字符串处理方式
-常见的字符串函数
--常见字符串函数1
--输出函数1
--输出函数2
--输出函数3
--去除空白函数1
--去除空白函数2
--去除空白函数3
--其他字符串函数1
--其他字符串函数2
--字符串函数实验1
--字符串函数实验2
--字符串函数实验3
--字符串函数实验4
--字符串练习1
--字符串练习2
--字符串练习3
--字符串练习4
--字符串练习5
--字符串函数
-正则表达式
--正则表达式练习
--正则表达式
-字符串函数--作业
-文件概述和操作
--文件概述和操作1
--文件概述和操作2
-文件的上传和下载
--文件上传1
--文件上传2
--文件上传3
--文件下载
-图像基础
--图像基础1
--图像基础2
-图像基本操作
--图像基本操作1
--图像基本操作2
--图像基本操作3
--图像基本操作4
--图像基本操作5
--图像基本操作6
--表单与验证码的结合
--图像技术练习1
--图像技术练习2
--图像技术练习3
--缩略图
-PHP文件与图像技术-作业
-变色验证码
-会话表单
--会话表单概述1
--会话表单概述2
--会话表单概述3
--超全局变量1
--超全局变量2
--超全局变量3
--表单安全验证
--获取表单数据
-cookie概述
--COOKIE简介
--COOKIE
-session概述
--基本应用1
--基本应用2
-会话管理-作业
-会话管理
-MySQL和PHPMyadmin概述
--MySQL概述1
--MySQL概述2
-PHP访问MySQL
--连接服务器
--选择数据库
--浏览表内容1
--浏览表内容2
--使用mysqli扩展添加数据到数据库中
--使用mysqli扩展删除数据库中数据
--使用mysqli扩展修改数据库中数据
-MySQL扩展的使用
--添加数据页面1
--添加数据页面2
--删除页面1
--删除页面2
--删除页面3
--数据修改页面1
--数据修改页面2
--数据修改页面3