1
$this->db->from('posts');
$this->db->where('id',$this->uri->segment(3));
$data['query'] = $this->db->get();

我正在尝试使用 where 语句发布一篇文章。运行此代码时,我没有收到任何错误。但在我看来,当我尝试获取$query->result()->bodyPHP 时给了我一个错误Trying to get property of non-object.所以我跑了print_r($query),这就是它给我的:

(
    [conn_id] => Resource id #27
    [result_id] => Resource id #32
    [result_array] => Array
        (
        )

    [result_object] => Array
        (
        )

    [custom_result_object] => Array
        (
        )

    [current_row] => 0
    [num_rows] => 0
    [row_data] => 
)

我不知道为什么它不会从数据库中获取我的特定帖子。我知道我的数据库处于工作状态。我在我网站的其他地方使用它。我也在$this->db->where()我网站上的其他地方使用过,效果很好。我也尝试过插入帖子的 id 而不是,$this->uri->segment(3)我遇到了同样的问题。我究竟做错了什么?

4

1 回答 1

2

result()当您从 db 中选择多于 1 行时,应使用,row()改为使用。

在控制器使用中

$data['query'] = $this->db->get()->row();

然后在视野中

$query->body

我强烈建议您使用$data['post']and$post->body而不是$query->body. 当您在一页上有更多查询时,您的视图将变得混乱。

于 2012-08-09T19:13:15.547 回答