当我试图从PHP中的复选框中获取值时;关于“;作为一个输出-这是怎么回事


when I am trying to get values from checkbox in PHP- i get "on" as an output - how is that?

当我试图从PHP中的复选框中获取值时此作为输出,打印$_POST

Array ( [days] => on [submit] => save )

视图代码

        $days_numbers = explode(',',$user->work_days);
        $week = array('Saturday','Sunday' ,'Monday','Tuesday' ,'Wendnesday' ,'Thursday' ,'Friday');
         ?>
       <form method='post' action='' >
       <?php
            for($i=0 ; $i< count($week); $i++)
           {
        if(in_array($i,$days_numbers))
          { echo "<input type='checkbox' name='days' checked >" . $week[$i]. "<br/>";
         }else 
  echo "<input type='checkbox' name='days'  >" . $week[$i] . "<br/>";
         }
          ?>

您的input元素缺少value属性

更换

echo "<input type='checkbox' name='days' >" . $week[$i] . "<br/>";

带有

echo "<input type='checkbox' name='days' value=".$week[$i]." >" . $week[$i] . "<br/>";

我发现我忘记了获得这样的写html视图:

echo "<input type='checkbox' name='days[]' value='$i' checked >" . $week[$i] . "<br/>";

我忘记给出输入的值,所以输出是on,还通过添加名称name="days[]将值作为数组。