2011-10-09 134 views
1

我试图从数据库显示数据。它显示这个错误使用php codeigniter显示来自mysql数据库的数据时出错

<p>Severity: Notice</p> 
    <p>Message: Trying to get property of non-object</p> 
    <p>Filename: controllers/schedule.php</p> 
    <p>Line Number: 57</p> 

    <p>Severity: Notice</p> 
    <p>Message: Trying to get property of non-object</p> 
    <p>Filename: controllers/schedule.php</p> 
    <p>Line Number: 58</p> 

这里是我的控制器代码,这段代码是与此相关的问题

$data['rows'] = $this->Model_scheduleSave->save_schedule($data); 
$this->load->view('home_view',$data); 

这里是我的看法

if($rows) { 
      //var_dump($rows); 
      foreach(rows as $r) : 
       "<div>". $r->client_url ."</div>"; 
       "<div>". $r->admin_url ."</div>"; 
      endforeach; 
     } 

这里是我的模型

public function save_schedule($data) { 
    $query = "INSERT INTO schedule VALUES('',?,?,?,?,?,?,?)"; 
    $result = $this->db->query($query,$data); 
    if($result) { 
     $get_urls = "SELECT client_url,admin_url FROM schedule ORDER BY id DESC LIMIT 1"; 
     $results = $this->db->query($get_urls); 
     if($results) { 
      foreach($results->result() as $rows) { 
       $data[] = $rows; 
      } 
     } 
     return $data; 
    } else { 
     return false; 
    } 
} 

我在哪里出不来错误?

+0

什么是'Model_scheduleSave-> save_schedule()'的定义(代码)?不知道它是回报价值,很难说。 – hakre

+0

我在上面编辑我的帖子并添加了模型。我没有在这里使用codeigniter特定的数据库函数。 – doforumda

回答

0

如果你的数据库查询不返回结果,该函数将返回传递给函数($data)的参数。这可能会导致你的错误。

通知的另一个词:不要再使用变量名。您使用$data将参数传递给控制器​​中的函数,然后将结果分配给$data['rows']。您应该使用两个变量,一个用于视图变量,另一个用于函数参数。

相关问题