【发布时间】:2014-04-22 18:48:31
【问题描述】:
根据这里的建议使用 $_POST 方法从复选框值声明数组,我做到了。但它不起作用。
在下面的 mysql 表中,它只存储表示 Array 的文本。它不存储任何检查的值。
即使我在下面的代码中输入 echo,它也会打印出“Array”。
带有问卷调查的 HTML 页面
<input type="checkbox" name="cb1[]" value="Mike">
<input type="checkbox" name="cb1[]" value="Irena">
<input type="checkbox" name="cb1[]" value="Sonya">
<input type="checkbox" name="cb2[]" value="Samsung">
<input type="checkbox" name="cb2[]" value="Apple">
PHP 脚本
for($i=1;$i<101;$i++) {
if(isset($_POST['cb'.$i])) {
$row[$i] = $_POST['cb'.$i];
}}
echo $row[1]; //it gives Array insted of values selected in the cb1
<?php
$db =& JFactory::getDBO();
$query = "INSERT INTO storeresults(V1, V2) VALUES ('$row[1]','$row[2]')";
$db->setQuery($query);
$db->query();
?>
【问题讨论】:
-
改用
var_dump($row[1]);,因为$row[1]是一个选定值的数组。如果你想得到你需要把它放在另一个for循环中的值 -
你想将每个选定的值作为记录插入,还是我想你想用
,之类的东西加入它们,然后在数据库中插入加入的值?