0

我有这个表单,我使用 ajax 和 jquery 提交,或者据说.. 好吧,我有这个多个复选框,从中我得到了一些值。

现在我在这里犯了一个错误,因为复选框的值没有发布在数据库中。这是 html/php 部分:

while($row = mysql_fetch_assoc( $result )) {
echo '<input type="checkbox" value="'.$row['regione'].'" id="regioni_gestite_ag" name="regioni_gestite_ag[]">' . $row['regione'] . '<br>';
}

这就是我用javascript得到它的方式:

var js_regioni_gestite_ag = $('input:checkbox[name=regioni_gestite_ag]:checked').val();

这是我在提交表单后清理它的方式:

$("#regioni_gestite_ag").prop("checked", false);

最后,我用来将其发布到数据库中的查询:

$postRegioni_gestite_ag = filter_var($_POST["postRegioni_gestite_ag"], FILTER_SANITIZE_STRING);
$selected_regioni = "";
foreach ($postRegioni_gestite_ag as $postRegioni_gestite_ag) {
$selected_regioni .= $postRegioni_gestite_ag . "/ ";
}
$selected_regioni = substr($selected_regioni, 0, -2);

谢谢...

4

1 回答 1

0

您的复选框数组的名称是$_POST['regioni_gestite_ag'],但在您使用的代码$_POST['postRegioni_gestite_ag']中不存在。
尝试使用这行代码:

$postRegioni_gestite_ag = filter_var($_POST["regioni_gestite_ag"], FILTER_SANITIZE_STRING);

建议:

  • 用于print_r($_POST)显示表单提交的内容
  • 请记住,所有未选中的复选框都不会提交,也不会出现在 $_POST 中。这是正常行为,不是错误
于 2012-09-21T11:04:18.857 回答