切换风格

后盾人PHP论坛-php培训论坛-php教程-PHP视频教程-北京PHP培训

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 234|回复: 4

[PHP&Mysql] 老师请帮我看看我的代码修改密码为什么不成功

[复制链接]
     
  • TA的每日心情
    无聊
    2018-3-3 00:30
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    1

    主题

    9

    帖子

    153

    积分

    幼儿园

    Rank: 1

    积分
    153
    活动推广币
    0 个
    后盾币
    153 个
    注册时间
    2017-11-30
    在线时间
    5 小时
    帖子
    9
    发表于 2017-11-30 22:34:17 | 显示全部楼层 |阅读模式
    本帖最后由 yi小轩 于 2017-11-30 22:36 编辑

    我看到tp5框架开发博客视屏照着做的,可是我到修改密码这一步返回 0,但是新密码和原始密码都和数据库对比成功了,到修改密码这一步就不行了,返回 UC截图20171130223201.png ,请老师看看我的代码 哪里不对,谢谢
    1. <?php

    2. namespace app\common\model;

    3. use houdunwang\crypt\Crypt;
    4. use think\Loader;
    5. use think\Model;
    6. use think\Validate;

    7. class Admin extends Model
    8. {
    9.     protected $pk = 'admin_id';
    10.     protected $table = 'blog_admin';

    11.     /**
    12.      * 登录用户
    13.      * @param $data post数据
    14.      */
    15.     public function login($data)
    16.     {
    17.         //1 执行验证
    18.         $validate = Loader::validate('Admin');
    19.         //如果验证不通过
    20.         if(!$validate->check($data)){
    21.             return ['valid'=>0,'msg'=>$validate->getError()];
    22.             //dump($validate->getError());
    23.         }
    24.         //2 比对用户名是否正确
    25.         $userinfo = $this->where('admin_username',$data['admin_username'])->where('admin_password',Crypt::encrypt($data['admin_password']))->find();
    26.         //halt($userinfo);
    27.         if(!$userinfo)
    28.         {
    29.             return ['valid'=>0,'msg'=>'用户名或密码不正确'];
    30.         }

    31.         //3 将用户信息存入到session中
    32.         session('admin.admin_id',$userinfo['admin_id']);
    33.         session('admin.admin_username',$userinfo['admin_username']);
    34.         return ['valid'=>1,'msg'=>'登录成功'];
    35.     }

    36.     /**
    37.      * 修改密码
    38.      * @param $data post数据
    39.      */
    40.     public function pass($data)
    41.     {
    42.         //1 执行验证
    43.         $validate = new Validate([
    44.             'admin_password'            =>  'require',
    45.             'new_password'              =>  'require',
    46.             'confirm_password'          =>  'require|confirm:new_password'
    47.         ],[
    48.             'admin_password.require'    =>  '请输入密码',
    49.             'new_password.require'      =>  '请输入新密码',
    50.             'confirm_password.require'  =>  '请输入确认密码',
    51.             'confirm_password.confirm'  =>  '两次输入的密码不一致',

    52.         ]);
    53.         if(!$validate->check($data)){
    54.             return ['valid'=>0,'msg'=>$validate->getError()];
    55.         }
    56.         //2 原始密码是否正确
    57.         $userinfo = $this->where('admin_id',session('admin.admin_id'))->where('admin_password',Crypt::encrypt($data['admin_password']))->find();
    58.         if(!$userinfo)
    59.         {
    60.             return ['valid'=>0,'msg'=>"原始密码不正确"];
    61.         }
    62. //dump($userinfo );
    63.         //3 修改密码
    64.         $res = $this->save([
    65.             'admin_password'  => Crypt::encrypt($data['admin_password']),
    66.         ],[$this->pk => session('admin.admin_id')]);
    67.         halt($res);

    68.     }

    69. }
    复制代码



         
  • TA的每日心情
    无聊
    2018-3-3 00:30
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    1

    主题

    9

    帖子

    153

    积分

    幼儿园

    Rank: 1

    积分
    153
    活动推广币
    0 个
    后盾币
    153 个
    注册时间
    2017-11-30
    在线时间
    5 小时
    帖子
    9
     楼主| 发表于 2017-12-1 10:22:54 | 显示全部楼层
    1.         //3 修改密码
    2.         $res = $this->save([
    3.             'admin_password'  => Crypt::encrypt($data['admin_password']),
    4.         ],[$this->pk => session('admin.admin_id')]);
    复制代码

    找到原因了,原来这还是更新的原始密码,新密码没有写进来,所以更新了0条
         
  • TA的每日心情
    开心
    2018-3-31 21:48
  • 签到天数: 438 天

    [LV.9]以坛为家II

    0

    主题

    1504

    帖子

    2万

    积分

    超级版主

    Rank: 8Rank: 8

    积分
    21645
    活动推广币
    0 个
    后盾币
    21645 个
    注册时间
    2015-3-9
    在线时间
    612 小时
    帖子
    1504
    发表于 2017-12-5 13:39:15 | 显示全部楼层
    yi小轩 发表于 2017-12-1 10:22
    找到原因了,原来这还是更新的原始密码,新密码没有写进来,所以更新了0条

    自己查找问题,赞,楼主加油
         
  • TA的每日心情
    奋斗
    2018-3-30 06:41
  • 签到天数: 107 天

    [LV.6]常住居民II

    1

    主题

    303

    帖子

    1671

    积分

    高中生

    Rank: 5Rank: 5

    积分
    1671
    活动推广币
    0 个
    后盾币
    1671 个
    注册时间
    2017-12-10
    在线时间
    108 小时
    帖子
    303
    QQ
    发表于 2017-12-11 11:57:41 | 显示全部楼层
    楼主这已经是高手了
         
  • TA的每日心情
    无聊
    2018-3-3 00:30
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    0

    主题

    31

    帖子

    79

    积分

    幼儿园

    Rank: 1

    积分
    79
    活动推广币
    0 个
    后盾币
    79 个
    注册时间
    2016-6-26
    在线时间
    8 小时
    帖子
    31
    发表于 2017-12-12 16:37:55 | 显示全部楼层
    ccccccccccccccccccccc
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    Archiver|小黑屋|后盾人 人人做后盾 ( 京ICP备12048441号-3 )

    GMT+8, 2018-5-28 15:39 , Processed in 0.128775 second(s), 33 queries .

    Powered by Discuz! X3.3

    © 2001-2017 Comsenz Inc.

    快速回复 返回顶部 返回列表