使用php codeigniter显示来自mysql数据库的数据时出错
问题描述:
我试图从数据库显示数据。它显示这个错误使用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;
}
}
我在哪里出不来错误?
答
如果你的数据库查询不返回结果,该函数将返回传递给函数($data
)的参数。这可能会导致你的错误。
通知的另一个词:不要再使用变量名。您使用$data
将参数传递给控制器中的函数,然后将结果分配给$data['rows']
。您应该使用两个变量,一个用于视图变量,另一个用于函数参数。
什么是'Model_scheduleSave-> save_schedule()'的定义(代码)?不知道它是回报价值,很难说。 – hakre
我在上面编辑我的帖子并添加了模型。我没有在这里使用codeigniter特定的数据库函数。 – doforumda