一般就只有一种html语法形式会出现该情形,如下:
<form action="abc.php?a=5&b=10" method="POST" > ...
项目1: <input type=”text” name=”uName” />
项目2: <input type=”password” name=”uPswd” />
<input type=”submit” value=”提交” />
</form>
则此时,uName和uPswd两个数据以post方式提交给abc.php,
并,同时:a=5和b=10两个数据,以get方式提交给abc.php
则在页面abc.php中:
这样取得get数据:
$v1 = $_GET[‘a’];
$v2 = $_GET[‘b’];
这样取得post数据:
$v3 = $_POST[‘uName’];
$v4 = $_POST[‘uPswd’];
但,也可以这样取(全有了):
$v1 = $_REQUEST[‘a’];
$v2 = $_REQUEST[‘b’];
$v3 = $_REQUEST[‘uName’]
$v4 = $_REQUEST[‘uPswd’]
当get数据和post数据同时提交并其中有重名的时候,情况怎么样呢?
说明:
1,尽量避免重名;
2,如果重名了,此时$_REQUEST只会记录(存储)其中一个数据(要么post数据,要么get数据)
3,至于记录的是哪个,是有php.ini中的一个设置项来决定:
3.1 request_order = “GP”; //这是默认值,G代表GET,P代表POST
3.2 含义是:先存储GET数据,再存储POST
3.3 可见如果重名,此时POST就会覆盖GET数据
3.4 改为:request_order = “PG”, 顺序反过来
结果为:
然后去php.ini中,修改为:request_order = “PG”
同样的数据,结果却为:
- $_GET, $_POST, $_REQUEST三种数据是相互独立的。
本文来自投稿,不代表科技代码立场,如若转载,请注明出处https://www.cwhello.com/3241.html
如有侵犯您的合法权益请发邮件951076433@qq.com联系删除