使用thinkphp框架实现检验账号密码登陆,然后发现无法正常打开登陆页面,检查之后发现没有语法上的问题
问题描述
问题出现的环境背景及自己尝试过哪些方法
试过代码删除后重新打,试过挨个注释,但是还是有问题
相关代码
<?php
namespace Admin\Controller;
use Think\Controller;
class PublicController extends Controller{
public function login(){
$this->display();
}
//生成验证码开始
public function verify(){
$config=array(
'fontSize'=>15,
'length'=>4,
'useNoise'=>false,
'imageW'=>108,
'imageH'=>42,
'codeSet'=>'1234567890qwertyuiopasdfghjklzxcvbnm',
);
$Verify=new \Think\Verify($config);
$Verify->entry();
}
//验证码方法结束
//检验登陆信息
public function checkLogin(){
//检验验证码是否正确
$code=I('code');//接收验证码
$verify=$this->checkCode($code);//调用checkCode方法
if($verify){
echo "验证码正确";
}else{
echo "验证码错误";
}
}
//检验用户名密码是否正确
$username=I("username"," ","trim"); //接收用户名,使用trim函数去除首尾空格
$password=I("password"," ","md5");
$return=$this->checkPassword($username,$password);
if($return){
echo "<br>";
echo "登陆成功";
}else{
echo "<br>";
echo "账号密码不匹配";
}
//检验结束
//检验用户输入验证码是否正确
//@param $code:输入的验证码
//@return bool:验证码正确返回true,否则返回false
public function checkCode($code){
$verify=new \Think\Verify(); //实例化verify类
return $verify->check($code); //调用检验方法
}
public function checkPassword($username,$password){
$map['username']=$username; //将得到的$username里面的内容附到$map['username']里
$admin=M('admin')->where($map)->find(); //在admin表里,以$map为条件,进行查找,并将查找到的内容赋给$admin
if($admin['password']===$password){
return $admin;
}else{
return false;
}
}
}
你期待的结果是什么?实际看到的错误信息又是什么?
希望可以按照书上写的实现登陆的验证
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
错误信息看不到么?47行
//检验用户名密码是否正确
$username=I("username"," ","trim"); //接收用户名,使用trim函数去除首尾空格
$password=I("password"," ","md5");
$return=$this->checkPassword($username,$password);
if($return){
}else{
}
应该放到checkLogin中
你的这部分代码
似乎应包含在 checkLogin 方法中, 但上面的大括号已结