php中复选框和多选框提交数据处理办法
在PHP开发中,表单提交应该⾮常常⽤,在所有表单数据中,对于初学者,⽐较难的恐怕就是复选和多选这种提交数组的处理和上传处
理,今天不说上传,就说说处理复选和多选下拉列表。⼀个复选和多选表单如下
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>php获取 checkbox复选框值的⽅法</title>
</head>
<body>
<form name="form1" method="post" action="testmultiform.php">
<label>
<input type="checkbox" name="checkbox[]" value="cb1">
复选⼀
</label>
<label>
<input type="checkbox" name="checkbox[]" value="cb2">
</label>
复选⼆
<label>
<input type="checkbox" name="checkbox[]" value="cb3">
</label>
复选三
<label>
<input type="checkbox" name="checkbox[]" value="cb4">
</label>
复选四
<label>
<input type="submit" name="Submit" value="提交">
</label>
</form>
</body>
</html>
<?php
if( $_POST )
{
$value = $_POST['checkbox'];
foreach($value as $onevalue){
echo $onevalue;
}
echo '你选择了:'.implode(',',$value);
//由于checkbox属性,我们必须把checkbox复选择框的名字设置为⼀个如果checkbox[],这样php才能读取,以数据形式,否则不能正确的读取checkbox复选框的值哦。}
>
折⾥[]是php特有的,其他如、java是没有的,php如果不加的话是接收不到这些数据的。接收数据$arrc = $_POST['c'];$arrlist =
$_POST['list'];这⾥收到的都是数组,⼀般不直接存⼊数据库,⽽是转换成字符串存⼊,就像 1,2,3这种形式,对于⾮数字字符串,存储数据
库以后要想显⽰⽐较⽅便,直接读取显⽰,⽽对于数字字符串,我们⼀般有可能⽤这些数字所代表的id去数据库中充当条件,查询数据,所
以使⽤的时候还要把这些字符串还原成数组,然后通过循环来查询显⽰。
数组与字符串转换的函数主要就是implode⽤来转换成字符串,explode⽤来还原成数组,如果只是存⼊数据库,serialize函数更
php初学者项目好,⽤来数据序列化存⼊数据库,取出我们⽤unserialize来还原成数组,⾮常⽅便,这就是两种⽤来常⽤处理数组存储到数据库,有没有更
好的我不知道,我在开发中就是主要⽤的这两种。
参数描述
separator可选。规定数组元素之间放置的内容。默认是 ""(空字符串)。array必需。要组合为字符串的数组。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论