Maison >développement back-end >tutoriel php >thinkphp验证用户是否登录的问题?

thinkphp验证用户是否登录的问题?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBoriginal
2016-06-23 14:16:191434parcourir

大家是怎样验证的呢?在每个Action里都验证一次?还是写在某个公共函数里调用?


回复讨论(解决方案)

一般来说都是调用的吧

不过我现在是这么做的   登录后存cookie  需要用的php文件或者具体某个位置验证是否存在这个cookie

一般来说都是调用的吧

不过我现在是这么做的   登录后存cookie  需要用的php文件或者具体某个位置验证是否存在这个cookie
嗯,这样是可以的。只是觉得麻烦。我在common通用函数中,加上验证用户的方法,通过判断a和m的值,是否调用验证用户的方法。但因为我在登录界面加了个验证码,一调用,验证码就出不来了。想找个更方便的方法。

可以写个公共类继承

一般我是这样做的:

class BaseAction extends Action{  function _initialize(){     if(!in_array(MODEL_NAME.'_'.ACTION_NAME,explode(',',"Public/login,Public/LoginOn,Public/verify"))){     if(!isset($_SESSION['login]) !! empty(session('login')))            $this->redirect("/login");    }  }}

可能代码有错哈,

一般我是这样做的:

class BaseAction extends Action{  function _initialize(){     if(!in_array(MODEL_NAME.'_'.ACTION_NAME,explode(',',"Public/login,Public/LoginOn,Public/verify"))){     if(!isset($_SESSION['login]) !! empty(session('login')))            $this->redirect("/login");    }  }}

可能代码有错哈,
谢谢哈,这个可行,刚试了下,之前没想到验证码其实也是调用了一个model下的action。代码有点小错误,“_”应该换成“/”。

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn