【问题标题】:I can't get my array checkbox values in PHP我无法在 PHP 中获取我的数组复选框值
【发布时间】:2017-03-16 00:04:51
【问题描述】:

我不知道为什么这不起作用,所以尽管已经回答了这个问题,但请不要因为我提出这个问题而撕毁我。我有一个 HTML 复选框数组,我想获取所检查内容的值。我通过 cURL 请求收到问题。

我尝试了几种更改变量名称、添加索引值的组合,使用

foreach ($var1 as $var1 => $value)

还是什么都没有。

PHP 显示问题:

      $exquest = curl_exec($ch); 
      curl_close($ch);
      $exquest = json_decode($exquest, true); 

      $numOfQuests = $exquest["questcount"]; 

      for ($i=0; $i<$numOfQuests; $i++) 
      {
      echo "<input type='checkbox' name='q[]' value='" . $exquest['question$i'] . "'> " . $exquest["question$i"] . "<br /><br />";
      }

PHP 收集检查问题:

if(is_array($_POST['q'])){
    foreach($_POST['q'] as $value){
  print_r($value);
  var_dump($value);
      }
   }

输出:

到目前为止,我得到的输出要么是“数组”重复的次数等于选中的框数,要么是 [0]=> 0、[1] => [1] 等,但即便如此它只检查总数而不是序列(即索引 0、2 和 4)它总是会返回 0、1、2 等。

【问题讨论】:

  • 未选中的复选框不提交任何值。
  • 你得到的是预期的输出,你需要改变什么?
  • 我希望它返回复选框行中存储的值吗?只是我对复选框和html的误解吗?我想如果你有 checkbox > "foo",如果我被选中它可以返回 "foo"
  • 是的,我开始怀疑它没有从数据库中正确存储或返回。根据您的建议,它张贴空白,这将有助于缩小范围。谢谢!

标签: php html arrays forms checkbox


【解决方案1】:

正如@Ryan Vincent 建议的那样,通过检查var_dump($_POST);,我确定在N 个复选框中没有任何内容从一页发送到另一页。”

解决方案:我在 q[] 中缺少名称和 ID 的 $i。谢谢大家!

     echo "<input type='checkbox' name='q[$i]' id='q[$i]' value='" . $exquest["question$i"] . "'> " . $exquest["question$i"] . "<br /><br />"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-05
    • 2019-05-04
    • 2013-07-06
    • 1970-01-01
    相关资源
    最近更新 更多