始终提示“Think\Model:getAdminByUsername方法不存在!”

来源:4-5 异步方式实现登录功能—用户信息的数据库校验

慕婉清3904657

2016-07-14

始终提示“Think\Model:getAdminByUsername方法不存在!”。

代码都是跟着老师的敲得

写回答

9回答

singwa

2016-07-14

您好,附上代码

0
4
singwa
回复
慕婉清3904657
好的。
2016-07-18
共4条回复

慕移动9989954

2016-10-29

我发现实例化是M(“Admin”)和D(“Admin”) 里面的Admin都要大写首字母才行。

1
0

慕侠5950343

2017-02-14

大兄弟你搞定了没我也卡在这了

0
0

qq_沐雨听风_04184803

2016-12-23

把AdminModel里getAdminByUsername的$this->_db = M('Admin');改成$this->_db = M('admin');试一试

0
0

SmileDL

2016-09-19

$this->_db = M('参数1');

这个参数1,用你数据库中你的数据表的表名,如果有前缀不用带前缀。

然后另一个文件的D()方法,实例化的是你建的Admin类

0
3
黄静静3136909
回复
SmileDL
好的,谢谢你,我能加上qq聊吗,215092419
2016-09-19
共3条回复

黄静静3136909

2016-09-19

你问题解决了吗,我也是这个问题,

0
0

Imooc_萧逸

2016-07-24

你的命名空间呢??当然找不到呢

0
0

慕婉清3904657

提问者

2016-07-15

Application/Admin/Controller/LoginController.class.php  中的check函数:

public function check(){
        $username = $_POST['username'];
        $password = $_POST['password'];
        if(!trim($username))
         return show(0,'用户名不能为空');
        if(!trim($password))
         return show(0,'密码不能为空');
         
        $ret = D('Admin')->getAdminByUsername($username);
        if(!$ret){
            return show(0,'用户不存在');
        }
        if($ret['password']!=getMd5Password($password)){
            return show(0,'密码错误');
        }
        
        session('adminUser',$ret);
        return show(1,'登录成功');
    }

0
0

慕婉清3904657

提问者

2016-07-15

Application/Common/Model/AdminModel.class.php文件

<?php
namespace Commom\Model;
use Think\Model;

class AdminModel extends Model
{
    
    public function __construct()
    {
        $this->_db = M('Admin');
    }
    private $_db = '';
    
    public function getAdminByUsername($username){
        $ret = $this->_db->where('username="'.$username.'"')->find();
        return $ret;
        
    }
}

0
1
qq_cjw_0
namespace Commom\Model 应为namespace Common\Model
2017-04-10
共1条回复

前端到后台ThinkPHP开发整站

用PHP+MySQL+Ajax开完新闻资讯整站,实现“小全栈”的梦想

3360 学习 · 1014 问题

查看课程