Thinkphp下实现验证码登陆功能

第一步:在前台写一个带有超链接的图片代码,例如:

<a href="javascript:void(change_code(this))"><img src="{:U(‘Admin/Login/verify‘)}" id="code"/></a>

超链接用JS,图片地址调用自己写的方法。

第二步:加入JS代码

<script type="text/javascript">
            var URL=‘{:U("Admin/Login/verify","","")}/‘;
            function change_code(obj){
                $("#code").attr("src",URL+Math.random());
                return false;
            }
        </script>

当点击图片的时候触发 change_code(obj)事件,通过加一个随机数改变图片地址,注意:URL的伪静态后缀名一定要为空。

第三步:后台生成验证码图片的方法verify

$config =    array(
        ‘fontSize‘    =>    18,    // 验证码字体大小
        ‘length‘      =>    4,     // 验证码位数
        ‘useNoise‘    =>    false, // 关闭验证码杂点
        ‘imageW‘      =>    130,   //  图片宽
        ‘imageH‘      =>    50,    //  图片高
    );
    $Verify = new \Think\Verify($config);     $Verify->entry();

首先配置想要的验证码属性,再实例化验证码

第四部:验证验证码是否输入正确

$Verify = new \Think\Verify($config); $verify->check($code,‘‘)

Think3.2下直接调用check,验证码输入正确,返回1,输入错误,返回0

时间: 2024-10-23 20:21:06

Thinkphp下实现验证码登陆功能的相关文章

ThinkPHP下实现验证码的调用

产生验证码的类位于ThinkPHP/Extend/Library/ORG/Util/Image.class.php文件中. 验证码函数参数解释: length:验证码的长度,默认为4位数 model:验证字符串的类型,默认为数字,其他支持类型有0 字母 1 数字 2 大写字母 3 小写字母 4中文 5混合 type:验证码的图片类型,默认为png width:验证码的宽度,默认会自动根据验证码长度自动计算 height:验证码的高度,默认为22 verifyName:验证码的SESSION记录名

Servlet实现简单的登陆功能(带验证码)

"纸上得来终觉浅",动手比看书印象更深,学到的更多.下面用Servlet实现简单的登陆功能,来巩固对Servlet的学习. 1.在WEB-INF下新建一个名为index.html作为登陆界面. index.html代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title>

在IIS下部署Thinkphp项目,验证码不能显示的解决办法

由于公司租用的是虚拟空间,而且用的是IIS服务器,所以部署PHP的时候就出现很多问题:比如昨天就碰到这个问题:在IIS下部署Thinkphp项目,验证码不能显示 这是生成验证码的方法: // 制作专门方法实现验证码生成 function verifyImg() { // 以下类Verify在之前并没有include引入 // 走自动加载Think.class.php autoload() $config = array ( 'useNoise' => false, 'imageH' => 35

ThinkPHP框架之验证码

TP框架中Think\Verify类可以支持验证码的生成和验证功能.具体文件:ThinkPHP/Library/Think/Verify.class.php 生成验证码 下面是最简单的方式生成验证码: $Verify = new \Think\Verify(); $Verify->entry(); 上面的代码会生成默认的验证码图片并输出,显示如下: 生成的验证码信息会保存到session中,包含的数据有: array('verify_code'=>'当前验证码的值','verify_time'

qtday02 qt做简单的加法器和模拟登陆功能

//在3t2目录下 //adder.h /* qt简单加法计算器 */ #ifndef ADDER_H #define ADDER_H #include<QDialog> #include<QLineEdit> #include<QtWidgets/QPushButton> #include<QtWidgets/QLabel> class Adder:public QDialog{ Q_OBJECT//让自定义的槽函数生效 private: QLineEdi

WebLogic Server的单点登陆功能--转载

在WebLogic 8.1最新的 SP4版本中,最引人注目的要算是在安全方面,提供了用于和Microsoft Windows客户端进行Single Sign-On的Single Pass Negotiate Identity Assertion Provider.通过该Provider可以轻松完成从前认为技术难度很高的和Windows客户端的Single Sign-On. 这个简单,低成本的SSO解决方案相信对大多数的企业应用来说更具吸引力: 用户只需要开机时登录Windows域,就可以以登录用

从零开始编写自己的C#框架(15)——Web层后端登陆功能

对于一个后端管理系统,最重要内容之一的就是登陆页了,无论是安全验证.用户在线记录.相关日志记录.单用户或多用户使用帐号控制等,都是在这个页面进行处理的. 1.在解决方案中创建一个Web项目,并将它设置为启动项 2.添加引用 3.添加WebManage文件夹与Login.aspx文件 4.添加登陆页面HTML代码 1 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Login.aspx

thinkPHP下的widget挂件原理与使用方法

当我们在多个视图页面中用到同一段动态的代码块时,我们就有必要用到thinkphp的widget扩展. widget就相当于在页面中调用一个专属widget的控制器,并将它关联的视图植入当前的页面中,所以,widget的视图内容要按照当前页面的情况来考虑. 先来举个例子吧 需求:写一个供页面使用的主题widget,及多个页面要从数据库中提取所有主题并以列表的模式罗列在页面中,实现以主题筛选的功能. 应用页面: <!-- 主题 --> <dt class="filter_cat&q

servlet 3.0无需配置web.xml,使用注入方式配置servlet实现登陆功能(服务器需要支持servlet3.0)

首先申明上面的报错红叉,我也不知道怎么回事.总之能运行. 新建项目时选择java EE6.0,低版本没有servlet3.0. 先看一个基本示例. Test.java是用来测试无需配置文件,无需静态页面(jsp,html) 直接访问servlet来从服务器上获取信息. Test.java代码 1 package com.gys; 2 3 import java.io.IOException; 4 import java.io.PrintWriter; 5 6 import javax.servl