【问题标题】:Checked box is correct or not?复选框是否正确?
【发布时间】:2017-11-29 15:08:07
【问题描述】:

我有PHP 表格。这个foreach 是执行多个checkedboxs。我想知道,用户在数据库中选中了 C_ID INSERT 复选框。此代码无法正常工作。

    <?php
 if(isset($_POST['send'])){
      foreach($_POST['mod'] as $checkbox){
        $checkbox = $values[COURSE_ID];
        echo $checkbox . ' ';

        $date = date("Y-m-d"); 
        $sql= "INSERT INTO REG ( C_ID, REGISTERED, DATE) "
        . "VALUES ('".$values[C_ID]."', 'Y' ,'".$date. "')";
        DBQuery($sql);  
      } 
 }

echo "<form name=send method=post >";
   foreach($result1 as $value) {
    $checked = in_array($value, $selected) ? 'checked="checked"' : '';
    echo '<input type="checkbox" name="mod[]" value="' . $value[C_ID] .'"  ' . $checked . '>'. $value[TITLE] .'</input><br>';
   }
   echo "<button type=submit id=send name=send>send</button>";
   echo "</form>";
   ?>

【问题讨论】:

    标签: php arrays checkbox


    【解决方案1】:

    试试这个:

     <?php
     $result1 = array(
        array(
            'C_ID' => 1,
            'TITLE' => "test"
        ),
        array(
            'C_ID' => 2,
            'TITLE' => "test 2"
        )
     );
     $selected = array();
    
    if(isset($_POST['send'])){
          foreach($_POST['mod'] as $checkbox){
            $date = date("Y-m-d"); 
            echo $sql= "INSERT INTO REG ( C_ID, REGISTERED, DATE) "
            . "VALUES ('".$checkbox."', 'Y' ,'".$date. "')";
            DBQuery($sql);  
          } 
     }
    
    echo "<form name=send method=post >";
       foreach($result1 as $value) {
        $checked = in_array($value, $selected) ? 'checked="checked"' : '';
        echo '<input type="checkbox" name="mod[]" value="' . $value['C_ID'] .'"  ' . $checked . '>'. $value['TITLE'] .'</input><br>';
       }
       echo "<button type=submit id=send name=send>send</button>";
       echo "</form>";
       ?>
    

    【讨论】:

    • 在 mu 代码中所有数据都会显示,但我无法提交。我想提交我的朋友选择的数据。
    【解决方案2】:

    据我了解,这一行是错误的 - $checkbox = $values[COURSE_ID];您正在用变量覆盖复选框信息。我觉得应该是这样-

       <?php
        if(isset($_POST['send'])){
             foreach($_POST['mod'] as $checkbox){
               //$checkbox = $values[COURSE_ID];
               $courseId = $checkbox;
               echo $checkbox . ' ';
    
               $date = date("Y-m-d"); 
               $sql= "INSERT INTO REG ( C_ID, REGISTERED, DATE) "
               . "VALUES ('".$courseId."', 'Y' ,'".$date. "')";
               DBQuery($sql);  
             } 
        }
    
       echo "<form name=send method=post >";
          foreach($result1 as $value) {
           $checked = in_array($value, $selected) ? 'checked="checked"' : '';
           echo '<input type="checkbox" name="mod[]" value="' . $value[C_ID] .'"  ' . $checked . '>'. $value[TITLE] .'</input><br>';
          }
          echo "<button type=submit id=send name=send>send</button>";
          echo "</form>";
    

    ?>

    【讨论】:

      猜你喜欢
      • 2012-10-23
      • 1970-01-01
      • 1970-01-01
      • 2011-04-18
      • 2011-06-12
      • 1970-01-01
      • 1970-01-01
      • 2017-03-12
      • 1970-01-01
      相关资源
      最近更新 更多