2015-04-01 116 views
0

我正在使用codeigniter交易。我写了一个函数,但它不工作。它应该在提交表单时完成交易。现在它不保存这个code.with转换代码它正在工作。我怎样才能解决这个问题:codeigniter交易不起作用

public function twotable_insertData() { 
      $this->db->trans_start(); 
      $data = array(
       'brand_name' => $this->input->post('f_name'), 
       'brand_user_name' => $this->input->post('l_name'), 

      ); 

      $brand_id = $this->m_common->insert_row('brands', $data); 
      echo '$brand_id'; 
      $data1 = array(
       'brand_id' => $brand_id, 
       'stadium_id' => $this->input->post('stadium'), 
       'concession_stand_no' => $this->input->post('con_std_no'), 

      ); 
      $this->m_common->insert_row('concession_stands', $data1); 
      redirect('backend/brand/view_brand'); 
      if ($this->db->trans_status() === FALSE) { 
       $this->db->trans_rollback(); 
      } else { 
       echo $this->db->trans_complete(); 
      } 
     } 
+0

您是否获得'brand_id' – 2015-04-01 08:43:52

+0

是的,我保存此brand_id另一个表.... – 2015-04-01 08:47:42

+0

你是在if if条件之前进行重定向如果在重定向之前条件可能需要放置 – 2015-04-01 08:51:01

回答

0

我已经更新您的查询......

$this->db->trans_start(); 
$data = array(
    'brand_name' => $this->input->post('f_name'), 
    'brand_user_name' => $this->input->post('l_name') 
); 

$brand_id = $this->m_common->insert_row('brands', $data); 
// echo '$brand_id'; 
$data1 = array(
      'brand_id' => $brand_id, 
      'stadium_id' => $this->input->post('stadium'), 
      'concession_stand_no' => $this->input->post('con_std_no') 
); 
$this->m_common->insert_row('concession_stands', $data1); 
$this->db->trans_complete(); 
if($this->db->trans_status() === FALSE){ 
    // Check if transaction result successful 
    $this->db->trans_rollback(); 
    $this->session->set_flashdata('failure', 'Transaction Fails.'); 
}else{ 
    $this->db->trans_complete(); 
    $this->session->set_flashdata('success', 'Transaction Success.'); 
} 
    redirect('backend/brand/view_brand'); 
+0

我已更新您的查询 – 2015-04-01 09:04:29

+0

我在哪里必须编写插入查询? – 2015-04-01 09:10:18

+0

谢谢你现在的工作:D:D – 2015-04-01 09:15:44