使用Codeigniter编辑和删除操作

时间:2014-02-25 16:03:40

标签: php codeigniter

我想更新并删除一个非常新的条目,我不知道在哪里放功能..所以我需要帮助

控制器

function delete()
{
    $this->site_model->delete_row('booking');
    $this->view();
}
}

site_model

function delete_row()
{
    $this->db->where('id', $this->uri->segment(3));
    $this->db->delete('booking');
}

和我的观点

<?php 
$this->table->set_heading("Name","Nationality","Number of Guest","Date","Package","Other      Request","Delete Record");
$qry = $this->db->get('booking');
foreach ($qry->result() as $row) {
$this->table->add_row($row->name,$row->nationality,$row->number_of_guest,$row->date,$row->package,$row->request);

}
echo $this->table->generate();

 ?>
TIA,我真的很新,所以请考虑一下..

2 个答案:

答案 0 :(得分:1)

试试这个:

您可以通过URL传递参数..例如:

yoursite / index.php的/控制器/删除/ 12

ID = 12

在您的控制器中:

function delete($id=null)
{
    $this->booking_model->delete($id);
    $this->view('my_view_name');
}

booking_model

function delete($id)
{
    $this->db->where('id', $id);
    $this->db->delete('booking');
}

答案 1 :(得分:0)

既然你没有真正的问题,我会在结束之前给你一些提示。

  • 数据库通信应该在模型中进行,而不是视图
  • 我建议您使用id而不是uri段,尤其是当您删除某些内容时(请参阅@Wlises的回答)
  • 要加载视图,请使用$this->load->view('view_name_here');
  • 创建一个删除按钮,您只需要使用简单的锚点,JavaScript重定向,表单将浏览器重定向到您的控制器的删除方法(类似于:site.com/booking/delete/5,其中5是预订的ID)提交等......

底线是:请使用教程,它非常好,涵盖了您所需要的99%:http://ellislab.com/codeigniter/user-guide/tutorial/

更新

您可以构建自己的表以获得更大的灵活性(并且您可能更熟悉HTML而不是CI的辅助函数)。因此,每一行都需要一个删除按钮/链接,如下所示:

<tr>
    <td><?php echo $row->name; ?></td>
    ... etc
    <td><a href="<?php echo base_url('booking/delete/' . $row->id); ?>">DELETE</a></td>
</tr>