【问题标题】:passing checkbox values from form to a php page将复选框值从表单传递到 php 页面
【发布时间】:2013-02-19 19:03:49
【问题描述】:

我有一个表单,其中为每个生成的记录(来自随机搜索)创建了复选框,例如:

name    value   id .... 
abc      24      x145       []checkbox
xyz      19      b234       []checkbox
...

由于记录是动态生成的,因此我在表单中有一行表示

<input type="checkbox" name="cb[]" onclick="toggleChecked(this.checked)"></input>

因此为每一行(记录)添加了一个复选框。如何将复选框的值从此表单传递到另一个表单以进行后期处理?我尝试了通常的$_POST['cb'],但没有成功。

【问题讨论】:

  • $_POST['cb'] 是否未定义?它应该包含一个数组。尝试使用调试器/var_dump 看看里面有什么??
  • 可能是因为你的复选框没有任何价值?
  • 它将在数组中。 print_r($_POST) 到 $_POST['cb'] 中的内容
  • 当我打印出 $_POST 的内容时,它返回一个空数组(不应该是这种情况)。我也尝试了另一种设置默认值 =0 的选项,也没有运气。
  • 请提供表单和字段的完整 HTML 代码。表单标签是否正确地包含了复选框字段?

标签: php html codeigniter checkbox


【解决方案1】:

HTML 复选框不像 $_POST["cb"][0]==true 那样工作 如果它们被选中,表单将与它们的值一起提交,因此$_POST["cb"][0] 将包含 null,因为您没有指定任何值,或者它们甚至没有提交,因为它们没有值。

你需要使用类似的东西:

<input type="checkbox" name="cb[]" value="checked" onclick="toggleChecked(this.checked)"></input>

【讨论】:

  • 我确实检查了 value="checked" 然后尝试使用 for($_POST["cb"] as $key=>$value) { if(isset($value) 访问它们。 .. } 也不走运。
  • 那么您将需要发布您的表单示例或var_export($_POST)的输出
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多