<?php
namespace Admin\Controller;
use Think\Controller;
class UserController extends Controller {//登陆验证
public function index(){
$user= M ("表名");
//接收登录表单里的名字以及密码
$adminname=$_POST['name'];
//密码加密,不建议使用MD5,MD5也不安全,这里测试用
$adminpwd=md5($_POST['pwd']);
//echo $adminname,$adminpwd;die;
$arr=$user->where("数据库用户名='$adminname'")->find();
if($arr){
if($arr['数据库密码']==$adminpwd)
{
//开启session,用cookie也可以,建议session
session_start();
session("name",$adminname);
//echo $_SESSION['name']; //返回对应数值,前端接收。
echo "0";
}else{
echo "1";
}
}else{
echo "2";
}
}
}
?>
【关于session与cookie主要核心,区别前面博客已列出,这里不区别】
【session】session赋值Session赋值比较简单,直接使用:session('name','value'); //设置sessionsession取值
$value = session('name');// 获取所有的session 3.2.2版本新增$value = session();
session删除删除某个session的值使用:session('name',null); // 删除name要删除所有的session,可以使用:session(null); // 清空当前的session
【cookie】Cookie设置cookie('name','value'); //
设置cookiecookie('name','value',3600); // 指定cookie保存时间Cookie获取获取cookie很简单,无论是怎么设置的cookie,只需要使用:$value = cookie('name');
如果要获取所有的cookie,可以使用:$value = cookie();
该用法相当于$value = $_COOKIE;
Cookie删除删除某个cookie的值,使用:cookie('name',null);
要删除所有的Cookie值,可以使用:cookie(null); // 清空当前设定前缀的所有cookie值
【关于防非法登录】首先创建一个名字为Common的控制器,里面判定是否非法(选取TP3.2框架)示意代码如下:
class CommonController extends Controller
{
public function __construct() {
parent::__Construct();
if(empty($_SESSION['name']))
{ //session('name',null);
echo "《script》alert('未登录,请先登录!');top.location.href='/XX/X/x;";
}
}
}

tp框架实现防止非法登录的更多相关文章

  1. TP框架中的一些登录代码分享

    <?php namespace Admin\Controller;use Think\Controller;class LoginController extends Controller{ p ...

  2. TP框架中如何使用SESSION限制登录?

    TP框架中如何使用SESSION限制登录? 之前总是被问题今天才明白,最高效的来做页面访问限制问题. OOP思想中的继承特性,实现验证,是否已经登录,不必每个页面都进行判断. 实现如下: 继承Cont ...

  3. tp框架的增删改查

    首先,我们来看一下tp框架里面的查询方法: 查询有很多种,代码如下: <?php namespace Admin\Controller; use Think\Controller; class ...

  4. tp框架之自动验证表单

    tp框架的create自动加载表单的方法可以自动根据自己定义的要求来验证表单里面的内容,但是由于是在后台执行代码,会拖慢程序运行速度,所以还是建议通过前端js来进行判断,后台只进行数据库的查询以及传值 ...

  5. 第一零二天上课 PHP TP框架 引入文件路径问题和调用验证码的方式

    外部文件引入到视图模板的方式       1,将外部文件放在Public文件夹下,用load标签引入       2,在模板出书写引入代码(方法有很多,只有以下方法不容易出问题) <load h ...

  6. struts2拦截器-简单实现非法登录验证

    概念:什么是拦截器 拦截器实现了面向切面的组件,它会影响多个业务对象的公共行为封装到一个个可重用的模块,减少了系统的重复代码,实现高度内聚,确保业务对象的整洁!   为什么使用拦截器 拦截器消除了动作 ...

  7. TP框架多上传域上传图片

    问题: 学习使用TP框架做电商网站是,添加商品表单需要上传商品logo和商品图片pics,有两个上传域,第一个上传域是logo,只上传一张,第二个上传域是pics,上传多张图片.使用如下代码,总是报错 ...

  8. TP框架 基础1

    php框架 一.真实项目开发步骤: 多人同时开发项目,协作开发项目.分工合理.效率有提高(代码风格不一样.分工不好) 测试阶段 上线运行 对项目进行维护.修改.升级(单个人维护项目,十分困难,代码风格 ...

  9. 程序猿修仙之路--数据结构之你是否真的懂数组? c#socket TCP同步网络通信 用lambda表达式树替代反射 ASP.NET MVC如何做一个简单的非法登录拦截

    程序猿修仙之路--数据结构之你是否真的懂数组?   数据结构 但凡IT江湖侠士,算法与数据结构为必修之课.早有前辈已经明确指出:程序=算法+数据结构  .要想在之后的江湖历练中通关,数据结构必不可少. ...

随机推荐

  1. git的基础介绍和使用

    git工作原理 git的工作原理还是比较简单的,当我们创建了本地代码仓库后,会在本地代码仓库的根目录中生成一个.git的隐藏文件. .git为一个文件目录,又叫做版本库.在本地代码仓库文件夹中,除.g ...

  2. Python基础篇【第7篇】: 面向对象(1)

    面向对象技术简介 相近对象,归为类 在人类认知中,会根据属性相近把东西归类,并且给类别命名.比如说,鸟类的共同属性是有羽毛,通过产卵生育后代.任何一只特别的鸟都在鸟类的原型基础上的.面向对象就是模拟了 ...

  3. R语言 三个函数sort();rank();order()

    R语言入门,弄懂了几个简单的函数,分享一下:R语言排序有几个基本函数: sort():rank():order()sort()是对向量进行从小到大的排序rank()返回的是对向量中每个数值对应的秩or ...

  4. python3+ 模块学习 之 subprocess

    subprocess 模块方法: call() check_call() check_output() 以上三个方法用于创建一个子进程,父进程等待子进程结束.若shell = true, 则shell ...

  5. oozie调用shell

    <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agree ...

  6. oracle批量修改多个表的数据

    方法一 写PL/SQL,开cursor declare  l_varID varchar2(20);  l_varSubName varchar2(30);  cursor mycur is sele ...

  7. Linux CentOS 7通过yum命令安装Mono4.0.1

    前言 上一篇中提到的快照方式安装Mono,该方式并不稳定,需要做各种配置,各种修改才能与jexus搭配运行. 一.安装源 rpm --import "http://keyserver.ubu ...

  8. js面向对象的实现(example 一)

    //通过函数原型链(prototype)的方式来构造对象 //通过闭包的方式来对元素类进行封装 //通过函数原型链的方式来构造对象的方法和类的继承 //通过以上步骤就可以用函数的形式来实现类的,封装, ...

  9. webApi 导入Excel

    /// <summary> /// 导入 /// </summary> /// <param name="organizationId">< ...

  10. Windows程序设再读笔记03-窗口与消息

    1.关于LoadIcon/LoadCursor,这两个函数,第一个参数为实例句柄,如果是从保存在磁盘中的可执行文件中加载资源,则需要则需要指定可执行文件的hInstance,如果是系统资源,该句柄为N ...