浏览器传值方式
1.表单传值
要像向浏览器请求数据必须有name属性
post传值:数据以post形式传输
<form method ="post" action="">
<input type="text" ....
</form>
get传值:将数据绑定到URL(名字=值)
get与post区别
1.表单对应的提交方式不同 method=“get/post”
2.数据提交过程不同:get将数据拼接到url,post提交的数据看不到的
3.get提交数据量小(2kb),post基本无限制(8m)
4.get提交的数据效率比post高
5.get和post传输的内容存放的位置不一样,一个放在header,一个放在body
如何选择:
数据安全性要求高选择使用post提交;
数据量比较大选择使用post提交
2.url传值
http:www.xxxxxx.com/xxx.php?name=???
服务器接受数据
1.get接收:接收get传值的数据,将浏览器传值作为一个数组的下标,值对应下标的值
$_get[‘name’]=???;
2.post接收:接收form表单post的数据
$_post;
注意
处理传值
当使用checkbox的时候,$_post传递两个同名的数据后面的数据会覆盖前面的,使得checkbox的数据不能正确被服务器所接收,当在name后面增加一个中括号,php会将中括号当成数组的元素来对待,于是php在解析的时候就将checkbox的值保存到一个数组
<input type=“checkbox” name=“xx[]” value=“x”>
将数组转换为字符串存储(implode)
//接收数据
$xx= $_post;
//将数据转为字符串
$xx=implode('|',$xx);
显示
将选中的checkbox变成数组(explode),判断当前的checkbox的值是否在数组中(in_array)
<?php
if(in_array('x',$xx)){
echo 'checked= "checked" ';
}
?>