阅读 85

think php 未登录,禁止访问页面 + 退出登录

 

 

1.首先在Local创建一个基类控制器

D:\PHP\phpstudy_pro\WWW\1906A\pyg>php think make:controller goods/Base --plain
Controller created successfully.

2:判断页面是否有session值,,没有就跳转会登录页面,登录后进行访问

php

namespace app\goods\controller;

use think\Controller;
use think\Request;

class Base extends Controller
{
    //
    public function __construct(Request $request = null)
    {
        parent::__construct($request);
        if (!session(?name)){
            $this->error(您还没有登录,请登录后在进行访问.........,/goods/login/create);
        }
    }


}

3:

 

 

 

 

、、、、、、、、表单页面的退出登录

  • "-1" href="/goods/login/loginOut">安全退出
  • php
    
    namespace app\goods\controller;
    
    use app\goods\model\GoodModel;
    use think\Controller;
    use think\Loader;
    use think\Request;
    use think\Validate;
    
    class Login extends Controller
    {
        //展示登录表单
        public function create()
        {
            //goods/login/create
            //通过域名/模块名/控制器名/方法名访问登录页面
            return view();
        }
    
        //登录处理,验证参数
        public function save(Request $request)
        {
            //
            $params = $request->param();
            //验证参数、非空
            $rule = [
                account => require,
                password => require,
                cord => require,
            ];
            $tips = [
                account.require => 账号不可以为空,
                password.require => 密码不可以为空,
                cord.require => 验证码不可以为空,
            ];
            $validate = new Validate($rule, $tips);
            $result = $validate->check($params);
            if (!$result) {
                $this->error($validate->getError());
            }
    //数据库验证参数
            $data = GoodModel::login($params);
            //验证账号
            if ($params[account] != $data[name]) {
                $this->error(账号错误, /goods/login/create);
            }
            //验证密码
            if (md5($params[password]) != md5($data[password])) {
                $this->error(密码错误, /goods/login/create);
            }
            //验证码进行验证
            if (!captcha_check($params[cord])) {
                $this->error(验证码输入错误, /goods/login/create);
            };
            if ($data) {
                //记录session
                session(name, $data[name]);
                $this->success(登录成功, /goods/goods/index);
            }
    
    
        }
    
    //退出登录
        public function loginOut()
        {
            //清除session
            session(name,null);
            //返回登录页面
            $this->success(正在退出,请稍等,/goods/login/create);
    
    
    
        }
    
    }
    //////////////////////表单登录页面
    
    {__NOLAYOUT__}
    "en">
    
        "UTF-8">
        "viewport" content="width=device-width, initial-scale=1.0">
        "X-UA-Compatible" content="ie=edge">
        登录
        "stylesheet" href="__STATIC__/admin/css/login.css">
    
    
    
    "/goods/login/save" method="post">
    class="login">
    class="center">

    Login

    class="inputLi"> 账户 "text" placeholder="账户" name="account">
    class="inputLi"> 密码 "password" placeholder="密码" name="password">
    class="inputLi"> 验证码 "text" placeholder="验证码" name="cord"> "{:captcha_src()}" name="img" onclick="this.src=‘{:captcha_src()}‘" >
    class="inputLi">

     

    原文:https://www.cnblogs.com/xiaoyantongxue/p/15156531.html

    文章分类
    代码人生
    版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
    相关推荐