zoukankan      html  css  js  c++  java
  • cookie 使用

    每次使用thinkphp搭建的后台,一关闭浏览器,又得重新输入账号和密码,有点麻烦,用cookie可以做到,关闭浏览器,再次打开浏览器的时候,就不需要输入账号和密码,对客户体验度也很好,虽然安全性有点低,但是是自己电脑倒是无所谓!下面我就把写的几行代码共享吧!

    thinkphp中cookie类,比较方便

    在配置文件config.php设置cookie的参数

    'COOKIE_DOMAIN' => www.0796jg.com', //cookie的有效域名
    'COOKIE_PATH' => '/' , //保存路径

    'COOKIE_PREFIX' => 'test_', //cookie的前缀
    'COOKIE_EXPIRE' => 36000, //cookie的生存时间

    'USER_AUTH_KEY' =>'authId', // 用户认证SESSION标记


    //设置cookie,在public类中的checklogin方法中写入:
    Cookie::set(C('USER_AUTH_KEY'),$authInfo['id']);//$authInfo['id']为用户id号

    //程序的流程是先到执行common类中的_initialize()方法,检测是否有权限你能够登陆,最先开始是执行 $this->checkUser();方法找到checkUser方法输入如下代码:

    1. protected function checkUser() {
    2.         if(!isset($_SESSION[C('USER_AUTH_KEY')])) {
    3.             //检查cookie,
    4.             $AUTH_KEY = Cookie::get(C('USER_AUTH_KEY'));
    5.             if (!empty($AUTH_KEY)){
    6.                 $User = M('User')->where('id = '.$AUTH_KEY)->find();
    7.                 if (!empty($User)){
    8.                     $_SESSION[C('USER_AUTH_KEY')]   =   $User['id'];
    9.                     $_SESSION['email']  =   $User['email'];
    10.                     $_SESSION['loginUserName']      =   $User['name'];
    11.                     $_SESSION['lastLoginTime']      =   $User['last_login_time'];
    12.                     $_SESSION['login_count']    =   $User['login_count'];
    13.                     $_SESSION['subsite_id'] =   $User['subsite_id'];
    14.                     if($User['account']=='admin') {
    15.                         $_SESSION['administrator']      =   true;
    16.                     }
    17.                 }
    18.             }else{
    19.                 $code = '<html><head></head><body><script language="javascript">';
    20.                 $code .= " if (parent) parent.location.href = "/index.php/Public/login"; ";
    21.                 $code .= "else window.location.href = "index.php/Public/login"; ";
    22.                 $code .= '</script></body></html>';
    23.                 exit($code);
    24.             }
    25.         }
    26.     }
    复制代码

    最终就设置成功了!

  • 相关阅读:
    JAVA错误:Unable to find config file. Creating new servlet engine config file: /WEBINF/serverconfig.wsdd
    java axis发布web service(二) 发布web service
    JAVA错误:AXIS Web Service Problem: No compiler found in your classpath! (you may need to add ‘tools.jar’)
    JAVA错误:java.lang.UnsupportedClassVersionError: Bad version number in .class file
    JavaScript中的div和filter错误
    拉格朗日乘数法
    Timeout Detection & Recovery (TDR)
    游戏程序员关心的Autodesk Maya 2013相关操作
    Eclipse开发Android程序如何在手机上运行
    我的第一篇随笔
  • 原文地址:https://www.cnblogs.com/frankiephp/p/7083468.html
Copyright © 2011-2022 走看看