2016-02-01 24 views
1

我試圖插入一個元素到我的'category'表中,並使用插入元素的id將另一個元素插入到'subcategory'表中。將數組轉換爲字符串Codeigniter 3.0

這是我的代碼在我的控制器

public function insertCategory(){ 
    $category = $this->input->post('category'); 
    $subcategory = $this->input->post('subcategory'); 

    $this->form_validation->set_rules('category', 'Category', 'required'); 
    $this->form_validation->set_rules('subcategory', 'Subcategory', 'required'); 

    if($this->form_validation->run() == FALSE){ 
     $this->load->view('ADMIN_ADDCategory'); 
    } 
    else{ 
     $category_id = $this->admin_model->insertCategory($category); 
     $this->admin_model->insertSubcategory($category_id, $subcategory); 
    } 
} 

這是我的代碼在我的模型

function insertCategory($category){ 
    $data = array(
     'category' => $category, 
     'status' => 1 
    ); 
    $this->db->insert('category', $data); 
    $this->db->select('id'); 
    $this->db->from('category'); 
    $this->db->where('category', $category); 
    $this->db->limit(1); 
    $query = $this->db->get(); 
    return $query->result(); 
} 

function insertSubcategory($category_id, $subcategory){ 
    $data = array(
     'category_id' => $category_id, 
     'subcategory' => $subcategory, 
     'status' => 1 
    ); 
    $this->db->insert('subcategory', $data); 
} 

但是我得到這個錯誤

enter image description here

我已經嘗試使用$category_id = (array) $this->admin_model->insertCategory($category);但它仍然無法正常工作

我該如何克服這個錯誤?感謝您的幫助。

+0

'的print_r()''的$ category_id'插入之後你有一個陣列 –

+0

類別@ShaileshSingh'陣列([0] => stdClass的對象([ id] => 28))'這是當我'print_r'輸出''$ category_id'時 –

+0

'$ this-> admin_model-> insertSubcategory($ category_id [0] - > id,$ subcategory);'調用這個方法 –

回答

1

$this->admin_model->insertSubcategory($category_id, $subcategory);

$ CATEGORY_ID是一個數組,所以,你必須做這樣的:

$this->admin_model->insertSubcategory($category_id[0]->field, $subcategory);

1

你應該試試這個

$this->admin_model->insertSubcategory($category_id[0]->id;, $subcategory); 
1

試試這個代碼

Model

public function insert($table, $data) 
{ 

    if($this->db->insert($table,array $data)) 
    { 
    return $this->db->insert_id(); 
    }else 
    return false 
} 

控制器

public function insertCategory(){ 

    $this->form_validation->set_rules('category', 'Category', 'required'); 
    $this->form_validation->set_rules('subcategory', 'Subcategory', 'required'); 

    if($this->form_validation->run() == FALSE){ 
     $this->load->view('ADMIN_ADDCategory'); 
} 
    else{ 

     $category = $this->input->post('category'); 
     $subcategory = $this->input->post('subcategory'); 

     //data must be an array 
     $data = [ 
      'category' => $category, 
      'status' => '1' 
     ]; 
     $category_id = $this->admin_model->insert('tablename',$data) 
     if($category_id != false) 
     { 
      $data = [ 
       'category_id' => $category_id, 
       'subcategory' => $subcategory, 
       'status' => 1 
      ]; 
      if($this->admin_model->insert('table name', $data) != false) 
      { 
      echo 'success'; 
      //or load your success page 
      }else{ 
      echo 'failed'; 
      //or load your success page 
      } 
     }else{ 
      echo 'failed'; 
     //or load your success page 
     } 
    } 
}