zoukankan      html  css  js  c++  java
  • 2019.3.20 Session

    一。Session缓存和Cookie的区别:

    1.cookie数据存放在客户的浏览器上,session数据放在服务器上。
    2.cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗
       考虑到安全应当使用session。

    3.session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能
       考虑到减轻服务器性能方面,应当使用COOKIE。

    4.单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。
    5.
    将登陆信息等重要信息存放为SESSION

       其他信息如果需要保留,可以放在COOKIE中

    二。判断登录时Session缓存是否存在此用户名

    use thinkfacadeSession;  //每次引用

    // 初始化
    protected function initialize()
    {}

    位置在tp5/thinkphp/library/think/Controller.php

    首先在admin/Base.php

    class Base extends Controller

    {

      protected function initialize(){

        if(!$this->isLogin()){  //判断它是否登录

          return $this->redirect("Login/index");  //如果没登录重定向到登录页

        }

      }

      //isLogin 判断是否登录

      public function isLogin(){

        if(!session("?username")){  //判断(当前作用域)是否赋值

          return false;

        }

         return true;

      }

    }

    在后台首页admin/index.php

    public function index(){

      if(!$this->isLogin()){

        return $this->redirect("Login/index");

      }

      return view();

    }

    到admin/Login.php中

    public Login extends Base

    {

      protected function initialize()

    {}

      public function index(){

        if($this->isLogin()){  //如果登录了

        return $this->redirect('Index/index');  //直接进到首页
       }

        return $this->fetch();

      }

    }

    最后在登录成功前

    // 赋值(当前作用域)
    Session::set('name','thinkphp');  //('username',$panduan['username']);
  • 相关阅读:
    java中字符串类型的比较
    iOS 检测是否插入耳机
    Model-View-Controller (The iPhone Developer's Cookbook)
    Spring Animation
    CoreImage 自动增强滤镜 以及 系统滤镜查询
    UIView Animation
    CoreImage 查询系统滤镜
    CoreImage 的人脸检测
    Smarty 模板操作
    smarty转载(1)
  • 原文地址:https://www.cnblogs.com/liuwei1/p/10563151.html
Copyright © 2011-2022 走看看