请耐心等待我,因为我是CodeIgniter的新手
我将通过举例说明
假设我有一个名为news的控制器,urls / news / create和/ news / delete可以删除新闻。
问题是我在新闻页面上有用户应该能够删除的评论。但是现在如果您/ comment / delete / 1它将保留在/ comment / delete页面上,但我希望用户留在特定的新闻页面上。
现在我用它:
public function delete($id = NULL)
{
$this->news_model->delete_news($id);
redirect('/news/');
}
但这并没有考虑回到特定的新闻项目。
请让我知道如何解决这个问题。
答案 0 :(得分:0)
您只需要引用新闻ID。假设/ news / n /是一个有效的网址。
public function delete($id = NULL, $newsId)
{
$this->news_model->delete_news($id);
redirect('/news/' . $newsId);
}
答案 1 :(得分:0)
在您的视图中添加此内容
<a href="<?php echo base_url() ?>Controller_name/delete/<?php echo ($id /* as your code */) ?>" >delete</a>
因此,当您单击该链接时,它将使用ID调用控制器。
所以在控制器中
在控制器中
public function delete($id)
{
$result = $this->news_model->delete_news($id);
if($result == TRUE){
redirect('news'); # this will call index
}
else{
echo 'Delete Error';
}
}
在模型中
public function delete_news($id)
{
# Change table name as well
if (!$this->db->delete('table_name', array('id' => $id))) {
# Error
return FALSE;
}
else{
# Success
return TRUE;
}
}
编辑01
public function delete($id)
{
$result = $this->news_model->delete_news($id);
if($result == TRUE){
$data['data'] = $this->model_name->data_method();
$this->load->view("View_name");
}
else{
echo 'Delete Error';
}
}