将数组转换为字符串 Codeigniter 3.0

Converting Array to String Codeigniter 3.0

我正在尝试将一个元素插入我的 'category' table 并使用插入元素的 ID 将另一个元素插入我的 'subcategory' table.

这是我控制器中的代码

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);
}

但是我收到了这个错误

我已经尝试使用 $category_id = (array) $this->admin_model->insertCategory($category); 但它仍然不起作用

如何克服这个错误?谢谢你的帮助。

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

$category_id 是一个数组,所以,你必须这样做:

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

你应该试试这个

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

试试这个代码

型号

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
       }
    } 
}