急!急!急!请高手帮个小忙,小妹谢谢您了。。

2016-07-07 16:48 来源:www.chinab4c.com 作者:ecshop专家

急!急!急!请问新增了资料档在ecmall database里,但是要如何宣示它?
各位高手请帮帮忙。。。

我在ecmall database里增加了新的table... member_bonus
然后我修改store.app如下:
/* 取得积分资料 */
function _get_bonusinfo($id)
{
//如果登陆,则查出该会员在这间店铺的积分详情
$bonus_mod =& m('member_bonus');
return $bonus_mod->find(array(
'conditions' => "store_id = '$id' AND user_id = ".$_SESSION['user_info']['user_id'],
));
}

当我运行系统时,电脑出现下面的问题:
Fatal error: Call to a member function find() on a non-object in C:\xampp\htdocs\app\store.app.php on line 1071

请问各位好心的高手,帮帮忙,这个问题出现在哪里?

谢谢,谢谢。。!

回答:
你没有建立文件 member_bonus.model.php。所以不能使用 $bonus_mod =& m('member_bonus');来获取member_bonus模型。
方案一:直接查询
function _get_bonusinfo($id)
{
$db=&db();
//假设表前缀为ecm_
return $db->getRow("select * from ecm_member_bonus where store_id=$id and user_id=".$_SESSION['user_info']['user_id']);
}
方案二:建立模型
建立下面文件 member_bonus.model.php ,保存到 includes/models/目录下
简单写一下模型。由于没有涉及到多表查询,表之间的关联关系就不写了
class Member_bonusModel extends BaseModel
{
var $table= 'member_bonus';
var $_name= 'member_bonus';
}