php核心编程

三种接收方式
$_GET
$_POST
$_REQUEST

表单元素必须要使用name元素才能不服务器接收
使用request方式post会覆盖get

';
var_dump($_GET);
echo '
'; echo '
';
var_dump($_POST);
echo '
'; //使用request接收数据时,如果遇到同名数组,post覆盖get echo '
';
var_dump($_REQUEST);
echo '
'; /* 使用post传值的时候必须要使用name,在网站中创建一个下标 */ ?>

在浏览器端不管多选框checkbox的name是什么都会被浏览器提交
在php中post和get会对name属性覆盖

解决方案
浏览器不认为[]有特殊性但是php认为[]有特殊性
在前端中添加[],在php中会认为这是一个数组只是用户没有添加索引
也就是没有添加下标,php会自动添加从0开始到结束




basketball pp aa

复选框数据常见处理

单选按钮的数据处理
多个选项只能选一个
表单中使用name属性,使用同名即可,因为只会上传一个
后台接收数据不需要额外处理
数据库存储只需要一个字段存储数据
checked="checked" 默认选中

多选框怎么处理数据
表单中的name属性使用数组格式:名字[]
后台接收到数据后,是一个数组
php需要将数组转换为字符串才能储存到数据库
implode(要分割的数组,‘分隔符’)
$str=implode($gend,',');

字符串转换数组
explode(',',$字符串名);

checkbox可以使用重名操作
1.表单中同名添加[]
2.php接收时按照数组处理
3.php转换有格式的字符串
4.数据库按照字符串储存

先进行判断是否为空
isset($_POST[])?$_POST['']:array();
 

";
$str=implode($gend,',');
echo $str,"
"; var_dump(explode(',', $str)); ?>

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(PHP)