Heim >Backend-Entwicklung >PHP-Tutorial >thinkphp验证用户是否登录的问题?

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

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-23 14:16:191434Durchsuche

大家是怎样验证的呢?在每个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。代码有点小错误,“_”应该换成“/”。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn