TP中登录验证
loginpro
1、建立控制器 loginController.calss.php
<?php
namespace Admin\Controller;
header('Content-type:text/html;charset=utf-8');
use Think\Controller;
class LoginController extends Controller { public function index(){
$this->display('login');
} public function login(){
$username = I("post.username");
$pass = I("post.pass");
$post = [
'username'=> $username,
'pass' => md5($pass)
]; $model = D("admins");
$data = $model->where($post)->find();
$_SESSION['id'] = $data['id']; //写入session if($data == Null){
$this->error("登录失败",U("login/index"));
}else{
$this->success('登录成功',U("Index/index"));
}
} public function login_out(){
$_SESSION['id'] = null;
$this->display('login');
}
}
2、视图view 建立login文件夹 建立login.html //登录页面的全部内容放在这个里面
action="__URL__/login" method="POST"
3、
写一个自动验证的方法_initialize()
要写一个公共的控制器 CommonController.class.php
建议写两个方法 一个是empty空方法 一个是自动验证
CommonController.class.php
<?php
namespace Admin\Controller;
header('Content-type:text/html;charset=utf-8');
use Think\Controller;
class CommonController extends Controller {
public function _initialize(){
if(empty($_SESSION['id'])){
$this->error("请登录",U("login/index"));
}
}
}
4、
修改下后台主页的控制器
extends CommonController 需要验证的,都需要继承他
访问任何一个控制器 只要继承的是CommonController 都会判断登录
例如:
use Think\Controller;
class GoodsController extends CommonController { //都继承这个CommonController
public function index() {
class IndexController extends CommonController {
public function index(){
TP中登录验证的更多相关文章
- C#中登录验证FormsAuthentication
1:前台编写一个登录界面,这里为了简化,只有用户名和密码 代码如下: <form method="post" action="/User/CheckLogin&qu ...
- jsp 中登录验证 注销 的模版
用户名密码验证模版 <%@page import="com.jerehedu.bao.User"%> <%@ page language="ja ...
- nutz中实现登录验证
一.nutz是什么 nutz是一个轻便的web端开发框架.主页如下:http://www.nutzam.com/core/nutz_preface.html 二.session简单介绍 大家都知道ht ...
- Python_socket常见的方法、网络编程的安全注意事项、socketsever模块、浏览器中在一段时间记录用户的登录验证机制
1.socket常见的方法 socket_常见方法_服务器端 import socket from socket import SOL_SOCKET,SO_REUSEADDR sk = socket. ...
- Django-rest_framework中利用jwt登录验证时,自定义返回凭证和登录校验支持手机号
安装 pip install djangorestframework-jwt 在Django.settings中配置 REST_FRAMEWORK = { 'DEFAULT_AUTHENTICATIO ...
- Asp.net MVC访问框架页中嵌套的iframe页面时,如果session或cookie过期,登录验证超时怎样自动跳转到登录页
一般登录验证的过滤器中,使用验证过滤器的Redirect方法,将请求重定向到指定的URL.但是如果我们要访问的页面是一个嵌套在框架页中的iframe页面时,这种重定向只会对iframe页面凑效,也就是 ...
- Redis 在java中的使用(登录验证,5分钟内连续输错3次密码,锁住帐号,半小时后解封)(三)
在java中使用redis,做简单的登录帐号的验证,使用string类型,使用redis的过期时间功能 1.首先进行redis的jar包的引用,因为用的是springBoot,springBoot集成 ...
- Spring Security在登录验证中增加额外数据(如验证码)
在使用Spring Security框架过程中,经常会有这样的需求,即在登录验证时,附带增加额外的数据,如验证码.用户类型等.下面将介绍如何实现. 注:我的工程是在Spring Boot框架基础上的, ...
- C# mvc中为Controller或Action添加定制特性实现登录验证
在本文开始前,先简单讲两个知识点: 1.每个action执行前都会先执行OnActionExecuting方法: 2.FCL提供了多种方式来检测特性的存在,比如IsDefined.GetCustomA ...
随机推荐
- VC 取消warning
#pragma warning (disable:4200) 4200是指具体哪个warning
- MATLAB画图设置长宽。并高清复制
- vuex的 例子
最近在学习vuejs,一直有听说vuex,用来实现多组件共享的一种状态管理模式,但是网上都说,不要为了用vuex而用vuex,大概意思就是尽量少用vuex,一些小项目可以用bus来实现组件之间的传值问 ...
- Linux CentOS7安装Mysql5.7
一.下载mysql mkdir /home/install #创建install目录 在/home/install目录下下载mysql5.7 wget https://cdn.mysql.com//D ...
- php分类树
class Category{ public $sonName; public $parentName; public function __consturt($id,$parent_id){ $th ...
- awk中使用shell变量
方法:使用-v参数. 对于多个shell变量使用多个-v 有个关于shell变量中的空格问题:
- java深入探究12-框架整合
1.Spring与Hibernate整合 需要配置的就是hibernate和bean.xml 1)关键点:sessionFactory创建交给SpringIOC:session的事务处理交给Sprin ...
- HDFS的设计
当数据集的大小超过一台独立的物理计算机的存储能力时,就有必要对它进行分区(partition)并存储到若干台单独的计算机上.管理网络中跨多台计算机存储的文件系统成为分布式文件系统(distribute ...
- 获取浏览器的相关信息(navigator)
* 智能机浏览器版本信息: * */ var browser = { versions: function() { var u = navigator.userAgent + navigator.ap ...
- 使用标签代替goto关键字
众所周知,java中没有goto语句,但是保留了goto这个关键字.由于goto是在源码级上的跳转,多次使用goto会引起代码混乱容易出错,这也是java取消goto语句的目的所在,但是goto语句也 ...