删除记录后重定向上一页

时间:2016-02-08 16:13:35

标签: php codeigniter

我是CI的新手。我希望你能解决我的问题。 :) 我正在尝试重定向我的网站中的上一页,其中包含来自数据库的数据的表。我继续收到消息

Fatal error: Call to a member function result() on a non-object in C:\xampp\htdocs\..... 
Call to a member function result() on a non-object in C:\xampp\htdocs\findiningcebu.com\application\views\admin\SearchRestoDisplay.php on line 122

的通知
Undefined variable: restaurantinfo....Backtrace:    
File: C:\xampp\htdocs\findiningcebu.com\application\views\admin\SearchRestoDisplay.php
Line: 122

以下是我的代码:

查看:

<div class = "list">
<table border=2>
<tr style="font-size: 16px; background-color: rgba(26, 26, 38, 0.5);">
<th>Name</th>
<th>Logo</th>
<th>Cuisine</th>
<th>Action</th>
</tr>

    <?php
      $restoname= ''; 
      $restologo= '';
      $cuisine= '';

      foreach($restaurantinfo->result() as $row) 
      { 
        $restoname= $row->restoname; 
        $restologo= $row->restologo;
        $cuisine= $row->cuisine;
       ?>

控制器:

public function delete($id)
{
    $this->load->model('AdminModel');
    $delete = $this->AdminModel->delete($id);
    $this->load->view('admin/SearchRestoDisplay');
}

 public function searchresto()
{
    $restoinfo = $_POST['restoinfo'];
    $searchinfo = $_POST['searchinfo'];

    $this->load->model('AdminModel');
    $restaurantinfo['restoinfo'] = $restoinfo;
    $restaurantinfo['searchinfo'] = $searchinfo;
    $restaurantinfo['restaurantinfo']=$this->AdminModel->searchrestaurant($restoinfo,$searchinfo);
    $this->load->view('admin/SearchRestoDisplay',$restaurantinfo);
}

型号:

public function delete($id){
$this->db->delete('restaurants',array('id'=>$id));
}

2 个答案:

答案 0 :(得分:0)

这种情况正在发生,因为result()是数据库类的一种方法,并且您尝试在$restaurantinfo上使用此方法,这看起来像一个简单的数组。

我建议你$this->AdminModel->searchrestaurant返回类似这样的内容

 function searchrestaurant(){
   /*stuff*/
   return $query->result_array(); 
}

通过这种方式,您可以在视图中简单地预测这一点

foreach($restaurantinfo as $row) 
      { 
        $restoname= $row['restoname']; 
        $restologo= $row['restologo'];
        $cuisine= $row['cuisine'];
      }

问题似乎是您尝试在视图中使用数据库类的方法,而您的查询不存在。

所以,更改searchrestaurant功能,或对视图进行查询..我不太推荐的事情......

希望有所帮助

答案 1 :(得分:0)

在加载视图的删除功能中,您没有传递值'$ restauranrinfo',这就是视图中缺少餐厅详细信息的原因。在加载视图之前从数据库中获取餐馆详细信息并在视图中传递值。