使用codeigniter从会话插入数据

时间:2016-03-06 07:54:13

标签: php mysql codeigniter session

我只是在Codeigniter中练习使用会话,而我在这里遇到问题是我的控制器

public function ajax_Addfees()
{
    if($this->input->is_ajax_request())
    {
      $input = $this->input->post();
      if($this->session->userdata('html')){
        $html = $this->session->userdata('html');
    }
      $id = explode($input['fno']);
      $html[$id] = ['amount' => $input['amount'], 'oldamount' => $input['deduction']];

      $this->session->set_userdata('html', $html);
    }
}

public function savetuition()
{                        
    $this->Tuition_model->savefees();       
    redirect('tuitionsetup_con');    
}   

这是我的模特

public function savefees() 
{  
    $fees = $this->session->userdata('html');
    $feeslist = [];
    if( !empty($fees) ) {
    foreach ($fees as $key =>$value) {
            array_push($feeslist, [
            'amount' => $value['amount'],
            'oldamount' => $value['oldamount'],
            'f_no' => $key,
            'sy_no' => $this->session->userdata('sy'),
            'level_no' => $this->session->userdata('lvl'),
            'id' => $this->session->userdata('id')
        ]);
        $this->db->insert_batch('tuition', $feeslist);
    } }

}

我正在尝试做的是使用codeigniter将数据从session-> set_userdata(' html')保存到我的数据库。

没有错误,但它没有将数据保存到数据库

1 个答案:

答案 0 :(得分:0)

您需要将模型修改为:

public function savefees() { 

   $fees = $this->session->userdata('html'); 
   $feeslist = array(); 
   if( !empty($fees) ) { 
      foreach ($fees as $key =>$value) {
        $feeslist[$key]["amount"] = $value['amount'];
        $feeslist[$key]["oldamount"] = $value['oldamount'];
        $feeslist[$key]["f_no"] = $key;
        $feeslist[$key]["sy_no"] = $this->session->userdata('sy');
        $feeslist[$key]["level_no"] = $this->session->userdata('lvl') ;
        $feeslist[$key]["id"] = $this->session->userdata('id') ;
      }
   }
   $this->db->insert_batch('tuition', $feeslist);
}