PHP中$_POST和$_GET的用法
post和get是指:页面提交的两种方式
get:参数都体现在url上,可以用于翻页,简单查询,get只能接收2M以下的内容,所以有局限性,另外由于内容是可见的,安全性就下降了,
post:用于页面表单 提交,上传文件,这些操作。大小没有限制,也不会在地址栏上显示。
$_POST 变量
$_POST 变量是一个数组,内容是由 HTTP POST 方法发送的变量名称和值。
$_POST 变量用于收集来自 method=”post” 的表单中的值。
从带有 POST 方法的表单发送的信息,对任何人都是不可见的(不会显示在浏览器的地址栏),并且对发送信息的量也没有限制
以下是$_POST的简单啊的练习


<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<form action="http://127.0.0.1:8080/php7/hello.php" method="post"> Enter your name: <input type="text" name="name" />
Enter your age: <input type="text" name="age" />
<input type="submit" />
</form> </body>
</html>


这里是hello.php文件的代码 “hello.php” 文件现在可以通过 $_POST 变量来获取表单数据了(请注意,表单域的名称会自动成为 $_POST 数组中的 ID 键)
<?php
header("content-type:text/html;charset=utf-8");
echo $_POST["name"];//可以输出form中标签的属性值 其中参数的name
echo $_POST["age"]; ?>
为什么使用 $_POST?
通过 HTTP POST 发送的变量不会显示在 URL 中。
变量没有长度限制。
不过,由于变量不显示在 URL 中,所以无法把页面加入书签。
$_GET 变量
$_GET 变量用于收集来自 method=”get” 的表单中的值,直观的的就是浏览器中可以看到的参数,比如我在百度搜索“wordpress”的时候,我请求的url就是http://www.baidu.com/s?ie=utf-8&bs=wordpress&f=8&rsv_bp=1&wd=wordpress&inputT=0,那么’?’后面的参数都是可以用 $_GET 获取,各个参数是以’&’作为分隔符的。
$_GET 变量是一个数组,内容是由 HTTP GET 方法发送的变量名称和值。
从带有 GET 方法的表单发送的信息,对任何人都是可见的(会显示在浏览器的地址栏),并且对发送的信息量也有限制(最多 100 个字符),所以参数的长度不是无限的,但是基本都能满足我们的要求了。
例子
1 |
<form action="hello.php" method="get"> |
当用户点击提交按钮时,发送的 URL 会类似这样:
1 |
http://www.w3school.com.cn/welcome.php?name=Peter&age=37 |
“hello.php” 文件现在可以通过 $_GET 变量来获取表单数据了(请注意,表单域的名称会自动成为 $_GET 数组中的 ID 键)
1 |
Welcome <?php echo $_GET["name"]; ?>.<br /> |
如果你在 name 表单框中输入了Mike ,在 age 表单框中输入了23,那么显示的结果就是这样的
1 |
Welcome Mike |
为什么使用 $_GET?
注释:在使用 $_GET 变量时,所有的变量名和值都会显示在 URL 中。所以在发送密码或其他敏感信息时,不应该使用这个方法。不过,正因为变量显示在 URL 中,因此可以在收藏夹中收藏该页面。在某些情况下,这是很有用的。
注释:HTTP GET 方法不适合大型的变量值;值是不能超过 100 个字符的。
****$_POST和$_GET的区别:
1.前者可以在网址的栏目上是看不到传送的内容的,而后者呢是是可以在网址的栏目是看到内容的
2.Get 方式需要使用 Request.QueryString 来取得变量的值;而 Post 方式通过 Request.Form 来访问提交的内容
3.前者传输的内容的大小比较大,安全性比较高,执行效率稍微低一些;后者的上传大小比较小,安全性低,执行的效率会计较高一点
4、 Get 方式提交数据,会带来安全问题,比如一个登陆页面,通过 Get 方式提交数据时,用户名和密码将出现在 URL 上,如果页面可以被缓存或者其他人可以访问客户这台机器,就可以从历史记录获得该用户的帐号和密码,所以表单提交建议使用 Post 方法;Post 方法提交的表单页面常见的问题是,该页面如果刷新的时候,会弹出一个对话框
一般的话建议使用 $_POST
PHP中$_POST和$_GET的用法的更多相关文章
- PHP中PHP $_POST和PHP $_REQUEST及PHP $_GET的用法及区别
笔者最近开始学习PHP语言大法,记录一下学习过程中遇到的知识点. 今天介绍的是php中有关 php $_post 和 php $_request 及 php $_get 的用法及区 ...
- php中用于接受表单数据的$_request与$_post、$_get
一.$_request与$_post.$_get的区别和特点 $_REQUEST[]具用$_POST[] $_GET[]的功能,但是$_REQUEST[]比较慢.通过post和get方法提交的所有数据 ...
- 转 php中$_request与$_post、$_get的区别
php中有$_REQUEST与$_POST.$_GET用于接受表单数据,当时他们有何种区别,什么时候用那种最好. 一.$_REQUEST与$_POST.$_GET的区别和特点 $_REQUEST[]具 ...
- php中$_REQUEST、$_POST、$_GET的区别
php中$_REQUEST.$_POST.$_GET的区别1. $_REQUEST php中$_REQUEST可以获取以POST方法和GET方法提交的数据,缺点:速度比较慢 . 2. $_GET 用来 ...
- php中$_REQUEST、$_POST、$_GET的区别和联系小结
php中$_REQUEST.$_POST.$_GET的区别和联系小结 作者: 字体:[增加 减小] 类型:转载 php中有$_request与$_post.$_get用于接受表单数据,当时他们有何 ...
- PHP输入流php://input与$_POST、$_GET
Content-Type的取值会影响php的输入流 学习笔记 1,Content-Type仅在取值为application/x-www-data-urlencoded和multipart/form-d ...
- PHP中$_GET['name']与$_POST['name']变量直接用变量名$name的php配置
php中,可以直接使用参数名称作为变量来接收get或post的传参,条件是php.ini中register_global设置成On 另外一种方法: if(!ini_get('register_glob ...
- PHP中的extract函数的用途 extract($_GET);extract($_POST)
把客户端表单中的变量名取出来 addslashes -- 使用反斜线引用字符串 extract(addslashes($_POST)); --处理POST表单 把客户端<FORM METHOD= ...
- 上传文件及$_FILES的用法实例
Session变量($_SESSION):�php的SESSION函数产生的数据,都以超全局变量的方式,存放在$_SESSION变量中.1.Session简介SESSION也称为会话期,其是存储在服务 ...
随机推荐
- python 学习 argparse
1. argparse python 中用于解析命令行参数和选项的标准模块 创建一个解析器对象,解析器类ArgumentParser add_argument() 方法用来指定程序接受那些命令行参数, ...
- vs 调式连接oracle报错问题32,64位问题
wind8 系统选择项目时生成目标平台选择为X86 报错“System.Exception”类型的未经处理的异常在 WindowsFormsApplication1.exe 中发生 其他信息: 尝试加 ...
- Mysql 基础导入导出
Mysql 导出数据库: mysqldump -u root -p 数据库 > 导出库名.sql mysqldump -u 用户名 -p 数据库名 表名 > 导出表名.sql 示例:mys ...
- 使用函数输出水仙花数 (void的用法)
6-11 使用函数输出水仙花数 (20 分) 水仙花数是指一个N位正整数(N≥3),它的每个位上的数字的N次幂之和等于它本身.例如:153=13+53+33. 本题要求编写两个函数, ...
- [C++]PAT乙级1010. 一元多项式求导 (25/25)
/* 1010. 一元多项式求导 (25) 设计函数求一元多项式的导数.(注:x^n(n为整数)的一阶导数为n*x^n-1.) 输入格式: 以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1 ...
- Cloudflare DNS 域名解析
参考文章:Cloudflare DNS 域名解析 小白一枚,等我这几天搞定后就写.....
- js 关键字 in 的使用方法
参考地址:http://www.cnblogs.com/qiantuwuliang/archive/2011/01/08/1930643.html in 操作符用于确定某个元素是否在数组中,判断某个属 ...
- C语言库函数syslog
参考链接: http://blog.csdn.net/jiangxinyu/article/details/1473356
- Maven 通过maven对项目进行拆分、聚合(重点)
对现在已有maven ssh项目进行拆分,拆分思路:将dao层的代码已经配置文件全体提取出来到一个表现上独立的工程中.同样service.action拆分. ssh-parent: 父工程 ssh-d ...
- 深度学习——深度神经网络(DNN)反向传播算法
深度神经网络(Deep Neural Networks,简称DNN)是深度学习的基础. 回顾监督学习的一般性问题.假设我们有$m$个训练样本$\{(x_1, y_1), (x_2, y_2), …, ...