zoukankan      html  css  js  c++  java
  • ThinkPHP之登录验证

    验证方面写的不是很完整,正在完善当中

    <?php
    /**
     * Created by dreamcms.
     * User: Administrator
     * Date: 2016/9/5
     * Time: 17:15
     */
    
    namespace AdminController;
    use ThinkController;
    
    class LoginController extends  CommonController{
    
        //视图显示
        public function Login(){
            $this->display();
        }
    
        /**
         * 登录验证
         */
        public  function Check_Login(){
            //验证码检测
           $names=$_POST['Captcha'];
            if($this->check_verify($names)==false){
                $data['error']=1;
                $data['msg']="验证码错误";
                $this->ajaxReturn($data);
            }
            //用户检测
            $uname=I('post.username');
            $upasswd=I('post.password');
            $map['uname']=$uname;
            $map['state']=1;
            $logins=M('login')->where($map)->find();
            if($logins)
            {
                if($logins['upasswd']!=$upasswd)
                {
                    $data['error']=1;
                    $data['msg']="密码错误";
                    $this->ajaxReturn($data);
                }
                session("admin",$logins);
    
                var_dump($logins);
               redirect(U('Index/index'));
            }
    
    
    
        }
    
        /**
         * 验证码生成
         */
        public  function Verifys()
        {
            $config=array(
                'fontSzie'=>30, //验证码字体大小
                'length'=>4,//验证码位数
                'useImgBg'=>true
    
            );
    
            $verify=new ThinkVerify($config);
            $verify->useZh=true;
    
            $verify->zhSet="梦起软件工作室";
            $verify->fontttf='simhei.ttf';
            $verify->entry();
    
        }
    
        /**
         * 验证码检测
         */
        public  function check_verify($code,$id="")
        {
            $verify=new ThinkVerify();
            return $verify->check($code,$id);
        }
        /**
         * 退出登录
         */
        public  function out_login(){
            session("admin",null);
            redirect(U('Login/login'));
        }
    }
    

      前台页面

    <html>
    <!DOCTYPE html>
    <html lang="en" class="no-js">
    
    <head>
    
        <meta charset="utf-8">
        <title>登录(Login)</title>
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta name="description" content="">
        <meta name="author" content="">
    
        <!-- CSS -->
        <link rel="stylesheet" href="__PUBLIC__/admin/login/css/reset.css">
    
        <link rel="stylesheet" href="__PUBLIC__/admin/login/css/style.css">
    
        <!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
        <!--[if lt IE 9]>
        <script src="__PUBLIC__/admin/login/js/html5.js"></script>
        <![endif]-->
    
    </head>
    <style>
    
    
        * { margin:0; padding:0; }
        body { background:#111; height:100%; }
        img { border:none; }
    
        #supersized-loader { position:absolute; top:50%; left:50%; z-index:0; 60px; height:60px; margin:-30px 0 0 -30px; text-indent:-999em; background:url("__PUBLIC__/admin/login/img/progress.gif") no-repeat center center;}
    
        #supersized {  display:block; position:fixed; left:0; top:0; overflow:hidden; z-index:-999; height:100%; 100%; }
        #supersized img { auto; height:auto; position:relative; display:none; outline:none; border:none; }
        #supersized.speed img { -ms-interpolation-mode:nearest-neighbor; image-rendering: -moz-crisp-edges; }	/*Speed*/
        #supersized.quality img { -ms-interpolation-mode:bicubic; image-rendering: optimizeQuality; }			/*Quality*/
    
        #supersized li { display:block; list-style:none; z-index:-30; position:fixed; overflow:hidden; top:0; left:0; 100%; height:100%; background:#111; }
        #supersized a { 100%; height:100%; display:block; }
        #supersized li.prevslide { z-index:-20; }
        #supersized li.activeslide { z-index:-10; }
        #supersized li.image-loading { background:#111 url("__PUBLIC__/admin/login/img/progress.gif") no-repeat center center; 100%; height:100%; }
        #supersized li.image-loading img{ visibility:hidden; }
        #supersized li.prevslide img, #supersized li.activeslide img{ display:inline; }
    
    
        #supersized img { max- none !important }
    
    </style>
    <body>
    
    <div class="page-container">
        <h1>梦起工作室后台登录(Login)</h1>
        <form action="{:U('Login/Check_Login')}" method="post">
            <input type="text" name="username" class="username" placeholder="请输入您的用户名!">
            <input type="password" name="password" class="password" placeholder="请输入您的用户密码!">
            <input type="Captcha" class="Captcha" name="Captcha" placeholder="请输入验证码!"><img src="{:U('Login/Verifys')}" width="120" height="43" name="verify" style="position: relative; top: 20px;" />
            <button type="submit" class="submit_button">登录</button>
            <div class="error"><span>+</span></div>
        </form>
    
    </div>
    
    <!-- Javascript -->
    <script src="__PUBLIC__/admin/login/js/jquery-1.8.2.min.js" ></script>
    <script src="__PUBLIC__/admin/login/js/supersized.3.2.7.min.js" ></script>
    <script src="__PUBLIC__/admin/login/js/supersized-init.js" ></script>
    <script src="__PUBLIC__/admin/login/js/scripts.js" ></script>
    
    </body>
    </html>
    

      

  • 相关阅读:
    sql server 笔记(数据类型/新建、修改、删除数据表/)
    在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: Nam
    jquery 操作 checkbox select
    layui常见问题
    Sublime Text 3下载-汉化-插件配置
    CSS前端开发学习总结、一
    如何用 JavaScript 下载文件
    腾讯大王卡、天王卡代申请
    新人报道~cnblogs
    Node.js
  • 原文地址:https://www.cnblogs.com/mengluo/p/5843704.html
Copyright © 2011-2022 走看看