用户
 找回密码
 入住 CI 中国社区
搜索
查看: 4536|回复: 5
收起左侧

[讨论/交流] 小白求助!trying to get property of non-object错误

[复制链接]
发表于 2015-6-17 14:47:39 | 显示全部楼层 |阅读模式
最近学习ci,动手做了个简单的新闻浏览发布网站。主页提示在如下view部分trying to get property of non-object错误,是因为数据没有数据的原因么,求助老司机。

view:
  <h2><a href="./view/<?php echo $posts->post_id; ?>"><?php echo $posts->post_title?></a></h2>
  <span class="byline"><?php echo $posts->post_artist ?></span>
  <?php echo $posts->post_content ?>


controller:

$data['posts'] = $this->pmodel->get_post();
$this->load->view('post/index',$data);
$this->load->view('footer');




发表于 2015-6-17 15:38:56 | 显示全部楼层
本帖最后由 Closer 于 2015-6-17 15:43 编辑

view 端請改成

  <h2><a href="<?php echo site_url('view/'.$posts['post_id']);?>"><?php echo $posts['post_title'];?></a></h2>
  <span class="byline"><?php echo $posts['post_artist'];?></span>
  <?php echo $posts['post_content']; ?>

C 端請載入

  $this->load->helper('url');

不對,應該先看你在 model 裡面做了甚麼
你在裡面還沒有讓他陣列化嗎?
 
 楼主| 发表于 2015-6-17 15:55:14 | 显示全部楼层
感谢大隐藏。

我的M部分,

            $this->db->select('*');
            if ($post_id === FALSE) {
                $this->db->order_by('post_id desc');
                $query = $this->db->get('posts');
                return $query->result();
            } else {
                $this->db->where('post_id',$post_id);
                $query = $this->db->get('posts');
                return $query->row();
            }
 楼主| 发表于 2015-6-17 16:00:48 | 显示全部楼层
Closer 发表于 2015-6-17 15:38
view 端請改成

  

感谢大隐藏。

我的M部分,

            $this->db->select('*');
            if ($post_id === FALSE) {
                $this->db->order_by('post_id desc');
                $query = $this->db->get('posts');
                return $query->result();
            } else {
                $this->db->where('post_id',$post_id);
                $query = $this->db->get('posts');
                return $query->row();
            }

发表于 2015-6-17 16:09:44 | 显示全部楼层
本帖最后由 Closer 于 2015-6-17 16:11 编辑

我是都這樣做,請參閱 CI 手冊 - 查詢結果

if($query->num_rows() > 0){
        return $query->result_array(); // OR row_array()
}
return;
发表于 2015-6-17 18:20:11 | 显示全部楼层
在$data['posts'] = $this->pmodel->get_post();后面
var_dump一下$data['posts']
看看是不是一个对象

你的错误提示一般来源于对非对象变量使用->符号

本版积分规则