您的位置:

php登录验证模块,php验证码如何实现登录验证

本文目录一览:

thinkphp 怎么做登录验证

登录无非就是验证用户名密码以及验证码是否正确,我们可以新建一个CommonAction的公共类,用来校验权限,其他所有类继承此类。该类内部写一个初始化方法,用于验证,这一讲先不详细讲解。继续说登录,由于登录是公开模块的方法,所以可以新建一个PublicAction类,用于公共的免验证方法,同时在配置文件中添加

'NOT_AUTH_MODULE'='Public',//默认不需要认证的模块

'USER_AUTH_GATEWAY'='/Public/login',//默认的认证网关

然后开始编写Public类,具体代码如下:

?php

classPublicActionextendsCommonAction{

//验证码显示

publicfunction verify(){

import("ORG.Util.Image");

Image::buildImageVerify(4,1,"png",100,28,"verify");

}

//验证是否账号密码

function checklogin(){

//此处多余可自行改为Model自动验证

if(empty($_POST['username'])){

$this-error('帐号错误!');

}elseif (empty($_POST['password'])){

$this-error('密码必须!');

}elseif (empty($_POST['verify'])){

$this-error('验证码必须!');

}

$map=array();

$map['username']=$_POST['username'];

$map['status']=array('gt',0);

if($_SESSION['verify']!= md5($_POST['verify'])){

$this-error('验证码错误!');

}

import('ORG.Util.RBAC');

//C('USER_AUTH_MODEL','User');

//验证账号密码

$authInfo=RBAC::authenticate($map);

if(empty($authInfo)){

$this-error('账号不存在或者被禁用!');

}else{

if($authInfo['password']!=md5($_POST['password'])){

$this-error('账号密码错误!');

}else{

$_SESSION[C('USER_AUTH_KEY')]=$authInfo['id'];//记录认证标记,必须有。其他信息根据情况取用。

$_SESSION['email']=$authInfo['email'];

$_SESSION['nickname']=$authInfo['nickname'];

$_SESSION['user']=$authInfo['username'];

$_SESSION['last_login_date']=$authInfo['last_login_date'];

$_SESSION['last_login_ip']=$authInfo['last_login_ip'];

//判断是否为超级管理员

if($authInfo['username']=='admin'){

$_SESSION[C('ADMIN_AUTH_KEY')]=true;

}

//以下操作为记录本次登录信息

$user=M('User');

$lastdate=date('Y-m-d H:i:s');

$data=array();

$data['id']=$authInfo['id'];

$data['last_login_date']=$lastdate;

$data['last_login_ip']=$_SERVER["REMOTE_ADDR"];

$user-save($data);

RBAC::saveAccessList();//用于检测用户权限的方法,并保存到Session中

$this-assign('jumpUrl',.'/Index/index');

$this-success('登录成功!');

}

}

}

//退出登录操作

function logout(){

if(!empty($_SESSION[C('USER_AUTH_KEY')])){

unset($_SESSION[C('USER_AUTH_KEY')]);

$_SESSION=array();

session_destroy();

$this-assign('jumpUrl',/Code.'/login');

$this-success('登出成功');

}else{

$this-error('已经登出了');

}

}

}

以上代码仅实现功能,没有做优化,有些验证的操作可以放到model,session也不用一 一赋值,用数组即可,我想已经入门的应该可以自己改的更好。

Thinkphp3.2模块验证登录问题?

可以的 每个模块可以使用不同的入口,需要在配置文件里修改,然后添加入口文件,在官方的文档里有的。如果不想多入口的话 就在Admin模块里添加一个RootAction.class.php 其他的Action都extends这个Action,然后就可以在Root里进行判断了

thinkphp中不需要用户进行登陆验证的和需要用户登陆验证的的页面,怎样写一下公用的来模块来处理他们?

写一个公共的模块 需要登录验证,让所有需要登录的模块继承这个模块,不需要登录的模块不继承这个模块就好了

php登录验证模块,php验证码如何实现登录验证

2022-11-25
php登陆验证码,php模拟登录识别验证码

2023-01-08
php验证密码,php验证码如何实现登录验证

2023-01-03
phpjs验证登录,php手机验证码登录

本文目录一览: 1、求助,php+js实现登录验证 2、用PHP+JS+MYSQL实现用户登陆验证,的具体步骤是怎么样的呢 3、php简单的登陆验证用户名和密码怎么写 4、PHP 中JS验证表单的问题

2023-12-08
phpjs验证登录(php网络验证源码)

本文目录一览: 1、PHP 验证网页跳转到登陆页面后登陆页面JS运行不完全 2、js 判断是否登录 3、php简单的登陆验证用户名和密码怎么写 4、求助,php+js实现登录验证 5、用PHP+JS+

2023-12-08
php验证码登陆界面,php登录界面验证码

2022-11-27
php登陆session验证,session 登录

2022-11-20
php授权验证系统2.6.8,php实现登录验证

2022-11-27
php会话验证(php实现验证码)

2022-11-09
php简单的身份证验证代码分享(php登录验证码代码)

2022-11-13
java登录验证ajax(java登录验证模块)

2022-11-10
php实现登陆页面验证,php登陆页面完整代码

2023-01-03
php登录注册验证码功能,php怎么实现邮箱注册验证码

2022-11-21
php验证库,php验证器

2023-01-06
Python登录模块实现网站验证

2023-05-13
php验证google(php验证码代码怎么写)

2022-11-12
身份证校验原理和php实现,php身份证简易验证

2022-11-20
php服务器验证问题(php授权验证系统)

2022-11-13
php验证后提交,php签名验证

2023-01-07
java验证码生成,java登录验证码怎么做

2023-01-09