CommonController.class.php
<?php
namespace Admin\Controller;
use Think\Controller;
class CommonController extends Controller {
  //初始化
  public function _initialize(){
    $uid = session('uid');    
//验证控制器名和方法名
    if(empty($uid) && ('Index' != CONTROLLER_NAME || !in_array(ACTION_NAME,array('mian','login','ajaxGetAdminInfo')))){
      $this->redirect("/Index/login");
    }
  }   public function _empty(){
    $this->error('工程师正在维护,请稍后!!!');
  }
}

 IndexController.class.php 
<?php
namespace Admin\Controller;
use Home\Controller\CommonController; class IndexController extends CommonController {   public function mian(){
    $this->display();
  }   public function login(){
    $this->display();
  }   //ajax验证登录
  public function ajaxGetAdminInfo(){
    $username = strtolower(I('username','','strip_tags'));
    $password = strtolower(I('password','','strip_tags'));
    $adminM = M('admin');
    $map['username'] = $username;
    $admin = $adminM->where($map)->find();
    if(!empty($admin)){
      $password = md5(md5($password).C('CIPHERTEXT'));
      if($admin['password'] == $password){
        session('uid',$admin['uid']);
        session('username',$username);
        $this->ajaxReturn(array('flag'=>'success','message'=>'确认成功'));
      } else {
        $this->ajaxReturn(array('flag'=>'error','message'=>'密码不正确'));
      }
    } else {
      $this->ajaxReturn(array('flag'=>'error','message'=>'账号不存在'));
  }   public function logout(){
    session("uid","");
    $this->success('退出成功',U('Index/login'));
  } }
 
html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>login-Admin</title>
<script src="__JS__/jquery-2.1.4.min.js"></script>
</head>
<body>   <form action="" method="post" name="loginForm">
    账号:<br>
    <input type="text" name="username" class="username" ><br>
    <span class="user"></span>
    <br>
    密码:<br>
    <input type="password" name="password" class="password"> <br>
    <span class="pass"></span>
    <br><br>
    <input type="button" value="登录" onclick="checkData()">
  </form> <br><br>
<script>
  function checkData(){
    var username = $('.username').val();
    var password = $('.password').val();
    if(username == ""){
      $('.user').text("请填写账号");
      return false;
    }
    if(password == ""){
      $('.pass').text("请填写密码");
      return false;
    }     var url = '__APP__/Index/ajaxGetAdminInfo';
    var data = {'username':username,'password':password};
    $.post(url,data,function(result){
      if(result.flag == 'success'){
        setTimeout("location.reload()",2000);
        location.href="__APP__/Index/mian";
      } else {
        if(result.message == '账号不存在'){
          $('.user').text("账号不存在");
          return false;
        } else {
          $('.user').text("账号或密码错误");
          return false;
        }
      }
    });
}
</script>
</body>
</html>

thinkphp验证是否登录并跳转的更多相关文章

  1. ThinkPHP实例—实现登录验证

    ThinkPHP 验证 本篇我们将运用商城实例讲解一下如何运用ThinkPHP做一个登录验证 我们的框架目录结构如下图所示: 其中 app  文件夹就是我们的应用文件夹  它的目录结构如下所示 其中 ...

  2. MVC4项目中验证用户登录一个特性就搞定

    在开发过程中,需要用户登陆才能访问指定的页面这种功能,微软已经提供了这个特性. // 摘要: // 表示一个特性,该特性用于限制调用方对操作方法的访问. [AttributeUsage(Attribu ...

  3. MVC4验证用户登录特性实现方法

    在开发过程中,需要用户登陆才能访问指定的页面这种功能,微软已经提供了这个特性. // 摘要: // 表示一个特性,该特性用于限制调用方对操作方法的访问. [AttributeUsage(Attribu ...

  4. 转:C4项目中验证用户登录一个特性就搞定

    转:C4项目中验证用户登录一个特性就搞定   在开发过程中,需要用户登陆才能访问指定的页面这种功能,微软已经提供了这个特性.     // 摘要:    //     表示一个特性,该特性用于限制调用 ...

  5. ThinkPHP实现用户登录

    ThinkPHP实现用户登录 ? //默认url入口 ? class IndexAction extends Action{ function index() { //检查用户是否登录 if(isse ...

  6. Spring Security4.1.3实现拦截登录后向登录页面跳转方式(redirect或forward)返回被拦截界面

    一.看下内部原理 简化后的认证过程分为7步: 用户访问网站,打开了一个链接(origin url). 请求发送给服务器,服务器判断用户请求了受保护的资源. 由于用户没有登录,服务器重定向到登录页面 填 ...

  7. 通过cookie验证用户登录

    # cookie # cookie# 当你在浏览器登陆时,浏览器记录这个登录信息(服务器响应时发送请求的数据和登录信息),再次访问时 浏览器会将访问请求和缓存的登录信息都发送到服务器, # 服务器通过 ...

  8. 【转】MVC4验证用户登录特性实现方法

    在开发过程中,需要用户登陆才能访问指定的页面这种功能,微软已经提供了这个特性. // 摘要: // 表示一个特性,该特性用于限制调用方对操作方法的访问. [AttributeUsage(Attribu ...

  9. [转]MVC4项目中验证用户登录一个特性就搞定

    本文转自:http://www.mrhuo.com/Article/Details/470/A-Attribute-For-MVC4-Project-Used-To-Validate-User-Log ...

随机推荐

  1. Nginx是一款面向性能设计的HTTP服务器,相较于Apache、lighttpd具有占有内存少,稳定性高等优势。

    ######Nginx配置文件nginx.conf中文详解######定义Nginx运行的用户和用户组user www www;#nginx进程数,建议设置为等于CPU总核心数.worker_proc ...

  2. Forward+

    http://aras-p.info/blog/2012/03/02/2012-theory-for-forward-rendering/ http://www.slideshare.net/taka ...

  3. 命令查询网站是否开启CDN加速

    1.使用ping命令 不一定准确  运行-CMD 直接输入ping  域名 C:\Users\6503>ping www.netnic.com.cn 正在 Ping u999.v.qingcdn ...

  4. Linux 下 查看以及修改文件权限

    查看权限 在终端输入: ls -l xxx.xxx (xxx.xxx是文件名) 那么就会出现相类似的信息,主要都是这些: -rw-rw-r-- 其中: 最前面那个 - 代表的是类型 中间那三个 rw- ...

  5. SQL 删除索引错误

    SQL Server 数据库执行 ”DROP INDEX 索引名 ON 表名“ 时出现“不允许对索引 '索引名' 显式地使用 DROP INDEX.该索引正用于 PRIMARY KEY 约束的强制执行 ...

  6. SQLServer日期函数用法

    --1.显示本月第一天 ,) ),)) --2.显示本月最后一天 ,),,))) ,,,)) --3.上个月的最后一天 ,,)) --4.本月的第一个星期一 , ) --5.本年的第一天 ,) --6 ...

  7. Go收藏

    Go项目收藏 电子书 1.Go Web 编程 2.Go入门指南(the-way-to-go_ZH_CN) 3.Go语言圣经(中文版) Go by Example 中文 一些Go英文电子书 High P ...

  8. Windows下将nginx安装为服务运行

    今天看到nginx这个小服务器软件正式版更新到了1.4.2,想玩下它.这个服务器软件虽小,但功能强大,是开源软件,有着良好的性能,被很多个人.企业,甚至大型企业所使用! 由于是在Windows下,所以 ...

  9. runtime第二部分成员变量和属性

    接上一篇 http://www.cnblogs.com/ddavidXu/p/5912306.html 转载来源http://www.jianshu.com/p/6b905584f536 http:/ ...

  10. Object-C目录

    Object学习目录: 1.OC概述 2.OC第一个应用程序 3.OC之类和对象(属性.方法,点语法) 4.OC之类的扩充(self,super关键字.继承.构造函数等)   5.OC之分类Categ ...