php 得到checkbox的值为什么是array
<inputtype="checkbox"name="idlist[]"value="31"/>1<inputtype="checkbox"name="idlist[]"...
<input type="checkbox" name="idlist[]" value="31"/>1
<input type="checkbox" name="idlist[]" value="30"/>2
<input type="checkbox" name="idlist[]" value="29"/>3
另一个页面:
if(is_array($_POST['idlist']))
是false
用county($_POST['idlist']) =1
print_r($_POST['idlist'])=Array
高手帮一下~~
我想得到前一页面的checkbox被选中的值 form的提交方式 是post的
var_dump($_POST['idlist'])的结果是:string(5) "Array" 来吧_角儿,貌似不是我想要的
我换成idlist了 var_dump输出的是string(2) "29",得到的是最后一个checkbox 展开
<input type="checkbox" name="idlist[]" value="30"/>2
<input type="checkbox" name="idlist[]" value="29"/>3
另一个页面:
if(is_array($_POST['idlist']))
是false
用county($_POST['idlist']) =1
print_r($_POST['idlist'])=Array
高手帮一下~~
我想得到前一页面的checkbox被选中的值 form的提交方式 是post的
var_dump($_POST['idlist'])的结果是:string(5) "Array" 来吧_角儿,貌似不是我想要的
我换成idlist了 var_dump输出的是string(2) "29",得到的是最后一个checkbox 展开
展开全部
因为php对checkbox的处理同其他语言不一样。像asp这种传递过去就直接是以逗号分割的字符串了,但是php传递过去的是一个数组。
一般在php中是采用foreach方法遍历数组来处理checkbox的。
一般在php中是采用foreach方法遍历数组来处理checkbox的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
说下我操作的办法(我一般就是这样用的)
1.先在前台页面的form表单提交的时候 用javascript获取被选中的checkbox的值赋给一个隐藏域
2.代码执行页面 只要接收隐藏域的值就好啦
关于第一步的实现可以用for循环
for(var i=0;i< document.getElementsByName('idlist').length;i++)
{
if(document.getElementsByName('idlist')[i].checked==true){
var hidvalue = hidvalue+document.getElementsByName('idlist')[i].value+",";
}
}
hidvalue=hidvalue.substring(0,hidvalue.length-1);
其中idlist是checkbox的name,再把hidvalue的值(是以,(逗号)分开的字符串,如(31,30,29))赋给你定义的隐藏域就行啦
反正我是这样实现的,希望可以帮到你,还有其他问题可以给我消息.
1.先在前台页面的form表单提交的时候 用javascript获取被选中的checkbox的值赋给一个隐藏域
2.代码执行页面 只要接收隐藏域的值就好啦
关于第一步的实现可以用for循环
for(var i=0;i< document.getElementsByName('idlist').length;i++)
{
if(document.getElementsByName('idlist')[i].checked==true){
var hidvalue = hidvalue+document.getElementsByName('idlist')[i].value+",";
}
}
hidvalue=hidvalue.substring(0,hidvalue.length-1);
其中idlist是checkbox的name,再把hidvalue的值(是以,(逗号)分开的字符串,如(31,30,29))赋给你定义的隐藏域就行啦
反正我是这样实现的,希望可以帮到你,还有其他问题可以给我消息.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
使用一般的办法确实没办法获得checkbox的值,具体思路如下:
<
$headercontent=file_get_contents("php://input");
$headercontentarr=explode("&",$headercontent);
$_BAIPOST=array();
foreach($headercontentarr as $value){
$tarr=explode("=",$value);
$_BAIPOST[]=array("name"=>urldecode($tarr[0]),"value"=>urldecode($tarr[1]));
}
echo "<pre>";
print_r($_BAIPOST);
?>
<form action="" method="post">
<input type="checkbox" name="aaa" value="1"/>1
<input type="checkbox" name="aaa" value="2"/>2
<input type="checkbox" name="aaa" value="3"/>3
<input type="checkbox" name="aaa" value="4"/>4
<input type="checkbox" name="aaa" value="5"/>5
<input type="checkbox" name="aaa" value="6"/>6
<input type="checkbox" name="aaa" value="7"/>7
<input type="text" name="bbbb" value="我是一个一般的input"/>
<input type="text" name="特殊的name" value="我是一个特殊的name"/>
<input type="submit" value="123456"/>
</form>
<
$headercontent=file_get_contents("php://input");
$headercontentarr=explode("&",$headercontent);
$_BAIPOST=array();
foreach($headercontentarr as $value){
$tarr=explode("=",$value);
$_BAIPOST[]=array("name"=>urldecode($tarr[0]),"value"=>urldecode($tarr[1]));
}
echo "<pre>";
print_r($_BAIPOST);
?>
<form action="" method="post">
<input type="checkbox" name="aaa" value="1"/>1
<input type="checkbox" name="aaa" value="2"/>2
<input type="checkbox" name="aaa" value="3"/>3
<input type="checkbox" name="aaa" value="4"/>4
<input type="checkbox" name="aaa" value="5"/>5
<input type="checkbox" name="aaa" value="6"/>6
<input type="checkbox" name="aaa" value="7"/>7
<input type="text" name="bbbb" value="我是一个一般的input"/>
<input type="text" name="特殊的name" value="我是一个特殊的name"/>
<input type="submit" value="123456"/>
</form>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的名字本身定义就是 idlist[]嘛.
要么就就像一楼那样做,改名字
要么就 换个输出, print_r($idlist);
要么就就像一楼那样做,改名字
要么就 换个输出, print_r($idlist);
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询