当前位置: 首页 > 知识库问答 >
问题:

CodeIgniterInsert_batch不工作

段干博涉
2023-03-14

我正在尝试使用codeigniter insert\u batch将多行插入到我的数据库表中。根据错误报告,似乎没有设置表列。只是阵列的数量:

我的看法是:

<table class="table">
      <center><h3> Activity Name: <?php echo $activity_name; ?></h3><h4> Date: <?php echo $activity_date; ?></h4></center>
      <tr>
          <td>Member Name and Course</td>
          <td>Attendance</td>
          <td>fee</td>
      </tr>
      <?php
      $count = 1;
      $member_count = 1;
      foreach ($students as $row) {
            $uID = $row['user_ID'];
            $cID = $row['council_ID'];
            $aID = $row['activity_ID'];
            $name = $row['user_LastName'].", ".$row['user_FirstName'];
            $course = $row['user_Course'];
            $year = $row['user_Year'];
      ?>
            <tr>
              <td>
                  <h4> <?php echo $member_count.". ".$name; ?></h4>
                  <h5> &nbsp;&nbsp;&nbsp;&nbsp; <?php echo $course." - ".$year; ?></h5>
              </td>
              <?php echo form_open('Isidran/InsertAttendance'); ?>
              <input type="hidden" id="uID<?php echo $count; ?>" name="uID[]" value="<?php echo $uID;?>"> 
              <input type="hidden" id="cID<?php echo $count; ?>" name="cID[]" value="<?php echo $cID;?>"> 
              <input type="hidden" id="aID<?php echo $count; ?>" name="aID[]" value="<?php echo $aID;?>">
              <input type="hidden" id="aname<?php echo $count;?>" name="aname[]" value="<?php echo $activity_name; ?>">
              <td><select id="attendance<?php echo $count; ?>" name="attendance[]" class="form-control">
                    <option value="Absent">  Absent </option>
                    <option value="Present"> Present </option>
                  </select>
              </td>
              <input type="hidden" id="name<?php echo $count;?>" name="name[]" value="<?php echo $name;?>">
              <input type="hidden" id="fines<?php echo $count; ?>" name="fines[]" value="<?php echo $activity_fee; ?>">
              <td><div id="fee<?php echo $count; ?>"><?php echo $activity_fee; ?></div> </td>
            </tr><br />
            <script type="text/javascript">
              $(function() {
                  $('#attendance<?php echo $count; ?>').change(function(){
                    var activity_fee = '<?php echo $activity_fee; ?>'
                      if($('#attendance<?php echo $count; ?>').val() == 'Absent') {
                          $('#fee<?php echo $count; ?>').show();
                          $('#fee<?php echo $count; ?>').text('<?php echo $activity_fee; ?>');
                      } else {
                          $('#fee<?php echo $count; ?>').show(); 
                          $('#fee<?php echo $count; ?>').text('0');  
                          $('#fines<?php echo $count; ?>').val('0'); 
                      } 
                  });
              });
            </script>
        <?php $count++; $member_count++; } ?>
          <tr>
            <td colspan="3"><button type="submit" id="btn_submit" class="btn btn-info pull-right">Submit</button></td>
          </tr>
        <?php echo form_close(); ?> 
      </table>

我的控制器:

public function InsertAttendance()
        {
            $attendance_data = array(
                    'attendance_userID' => $this->input->post('uID[]'),
                    'attendance_councilID' => $this->input->post('cID[]'),
                    'attendance_activityID' => $this->input->post('aID[]'),
                    'attendance_activity' => $this->input->post('aname[]'),
                    'attendance_status' => $this->input->post('attendance[]'),
                    'attendance_sname' => $this->input->post('name[]'),
                    'attendance_fines' => $this->input->post('fines[]'));
            $data['result'] = $this->Site_model->insertAttendance($attendance_data);
            if($data['result'] == true)
                {
                    $this->session->set_flashdata('feedback', '<div class="alert alert-success alert-dismissable">
                                                                        <a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a>
                                                                            <strong>Added Successfully</strong>
                                                                        </div>');
                    redirect('Isidran/Home');
                }
        }

和型号:

public function insertAttendance($data)
    {
        $this->db->insert_batch('tbl_council_activity_attendance', $data);
        if($this->db->affected_rows() > 0)
            {
                        return true;
            }
    }   

共有2个答案

傅阳
2023-03-14

如果你想插入批处理比你的数据数组将

$array_name=array(
                array(
                'col1'=>'data',
                'col2'=>'data',
                'col3'=>'data'
                ),
                array(
                'col1'=>'data',
                'col2'=>'data',
                'col3'=>'data'
                )
);
熊博远
2023-03-14

尝试

public function insertAttendance($data)
{
    $attendance=array(
      'column1' => $data['index1'],
      'column2' => $data['index2'],
      'column3' => $data['index3'],
      .
      .
    );
    $this->db->insert('tbl_council_activity_attendance', $attendance);
    if($this->db->affected_rows() > 0)
    {
       return true;
    }
}   
 类似资料:
  • 我想在菜单栏文本被选中时更改它的颜色。 这里可能出了什么问题? 我尝试使用伪类':active',但没有得到应用。其中as':Hover'正在工作。 我还尝试使用'Router LinkActive',它应该添加类'Active-Link',但这也不起作用。 我在下面给出了HTML、SCCS和TS代码:

  • 我编写了一组简单的类,向一位朋友演示如何为AOP(而不是xml配置)使用注释。我们无法使@ComponentScan工作,并且AnnotationConfigApplicationContext getBean的行为也不正常。我想明白两件事。请参阅下面的代码: PersonOperationSI.java PersonOperations.java PersonOperationsConfigCl

  • 我正在Eclipse Neon中使用Hibernate工具(JBoss tools 4.4.0.Final)。现在,我想将数据库表反向工程为POJO对象和Hibernate映射文件。 我遵循了一些关于如何设置Eclipse来生成POJO对象的教程。在我运行配置之前,一切看起来都很好。什么都没发生,也没有抛出错误。有人能帮我吗?数据库是一个微软SQL服务器2014。 我的逆向工程配置文件看起来像:

  • 我尝试使用StreamWriter.WriteLine(不是静态地)将几行代码一次写到。txt文件中。 每个播放器对象都是字符串cosnatants。如果我使用不同的文件名(也称为BasicTestInfo2.txt),它会在bin.debug中创建该文件,但它是空的。我知道我到达了using块的内部(我在里面放了一个console.writeline),我知道我想要截断,这就是为什么我对appe

  • 我正在尝试使用yii2邮件组件发送电子邮件。 配置web。php 还有我的代码。 我收到了这个错误。 Swift\u TransportException预期响应代码为250,但收到代码“535”,消息“535-5.7.8用户名和密码不被接受。有关详细信息,请访问535 5.7.8https://support.google.com/mail/?p=BadCredentialsa13-v6sm41