ECMall首页报错“Call to a member function get()”解决方法

今天高速度 小编遇到一个客户,他网站出现了以下的报错:

 Call to a member function get() on a non-object in frontend.base.php on line 39
报错这一行的源代码如下:$this->assign('cart_goods_kinds', $cart->get_kinds(SESS_ID, $this->visitor->get('user_id')));看了这个和报错结合代码,可以发现,这个报错的原因是:$this->visitor这个对象未正确实例化。解决这个问题,我的办法很简单,加入对变量的检查,以下是我修改后的内容: $this->assign('cart_goods_kinds', is_object($cart) && is_object($this->visitor) ? $cart->get_kinds(SESS_ID, $this->visitor->get('user_id')) : 0); 关于这类的报错,在ecmall中还存在一些,其他的一些小错误都是由于未对使用的变量进行判断而直接使用而引起的。虽然都是小错误,但还是再严谨一些的好。小错误对于有经验的开发人员来说,是很容易解决的,但对于一些使用整套程序做网站的技术门外汉来说,再小的错误都是解决不了的大问题。高速度 主机相关文章推荐阅读:ECMALL如何修改管理员密码EMCALL网站程序如何安装模板ECMALL程序网站首页空白怎么办? 

本文地址:https://www.gaosudu.com/shopecmall/14888.html