如何创建一个方法,其中所有crud操作将在codeigniter中执行

时间:2017-07-13 07:34:07

标签: php html codeigniter

此方法仅保存,但我希望它能在codeigniter中执行插入更新删除 / p>

   //Gallery Category CRUD Module
   public function galleryCategory(){
    if (!empty($_POST['gallery_cat_name'])){
        $data = $this->input->post();
        $data['gallery_cat_date'] = date("Y-m-d", strtotime(str_replace('/', '-', $this->input->post('gallery_cat_date'))));
        //Data save
        $response = $this->MyModel->save('gallery_category', $data);

        if ($response) {
            $sdata['success_alert'] = "Saved successfully";
        }else{
            $sdata['failure_alert'] = "Not Saved successfully";
        }
        $this->session->set_userdata($sdata);

        redirect('back/galleryCategoryCreate');
    }else{
        $sdata['failure_alert'] = "Try again";
        $this->session->set_userdata($sdata);
        redirect('back/galleryCategoryCreate');
    }
}

1 个答案:

答案 0 :(得分:1)

您不需要使用查询创建模型以进行基本的crud操作。 CodeIgniter将它们作为Query Builder类提供。

  

来自CodeIgniter Documentation

选择数据

以下函数允许您构建SQL SELECT语句。

$this->db->get()

运行选择查询并返回结果。可以单独使用来从表中检索所有记录:

$query = $this->db->get('mytable');  // Produces: SELECT * FROM mytable

插入数据

$this->db->insert()

根据您提供的数据生成插入字符串,然后运行查询。您可以将数组或对象传递给函数。以下是使用数组的示例:

$data = array(
        'title' => 'My title',
        'name' => 'My Name',
        'date' => 'My date'
);

$this->db->insert('mytable', $data);
// Produces: INSERT INTO mytable (title, name, date) VALUES ('My title', 'My name', 'My date')

更新数据

$this->db->update()

生成更新字符串并根据您提供的数据运行查询。您可以将数组或对象传递给函数。以下是使用数组的示例:

$data = array(
        'title' => $title,
        'name' => $name,
        'date' => $date
);

$this->db->where('id', $id);
$this->db->update('mytable', $data);
// Produces:
//
//      UPDATE mytable
//      SET title = '{$title}', name = '{$name}', date = '{$date}'
//      WHERE id = $id

删除数据

$this->db->delete()

生成删除SQL字符串并运行查询。

$this->db->delete('mytable', array('id' => $id));  // Produces: // DELETE FROM mytable  // WHERE id = $id

第一个参数是表名,第二个是where子句。您还可以使用where()或or_where()函数,而不是将数据传递给函数的第二个参数:

$this->db->where('id', $id);
$this->db->delete('mytable');

// Produces:
// DELETE FROM mytable
// WHERE id = $id
  

你必须参考documentation一次,有很多帮手。