geomen 发表于 2011-5-13 23:37:41

条件查询后,如果没有结果会显示错误

网站上传到新的空间,由于数据库中是没有数据的,就出现问题了,
model语句是这样的:

function get_recommend()
    {
      $query = $this->db->query("select * from goods where isnew = 1 order by add_time DESC limit 1;");
      return $query->row();
    }

controllers中的语句是这样的:

function header()
    {
      $data['recommend'] = $this->Mindex->get_recommend();
}
    function index()
    {
      $this->header();
      $this->load->view('index',$data);
      $this->load->view('footer');
      
    }

view中就直接: $recommend->name;引用了
如果model中的mysql语句没有符合的条件的话,就会出现
“Trying to get property of non-object”
能让这句不出现吗?

zhouli520 发表于 2011-5-13 23:51:17

你连最基础的空值判断都没做...当然会报错......

geomen 发表于 2011-5-13 23:57:22

回复 zhouli520 的帖子

要怎么、在哪做空值判断,能给说明下吗!万分感谢了!!!

xiaojun 发表于 2011-5-14 00:27:11

isset($XXX)用来判断$XXX是否存在

kissgxd 发表于 2011-5-14 20:05:34

回复 geomen 的帖子

$recommend返回后是个数组,数组元素才是对象
你在View中试试
if(count($recommend)>0)
{
$recommend->name;
}

因为没有数据,应该也会报错
页: [1]
查看完整版本: 条件查询后,如果没有结果会显示错误