PHP--TP框架----生成验证码的方式

TP框架----生成验证码的方式

xianshi.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>

<body>
<img src="__CONTROLLER__/YZM"><!--src=""指向的是操作方法。"__CONTROLLER__/YZM"当前控制器下-->

</body>
</html>

  

1、

【2】                                             【1】

【1】把验证码的类造一个对象出来。

【2】调用对象里的方法,方法是entry()----可以生成验证码。

验证码的类----Verify.class.php

<?php
namespace Home\Controller;//这个文件的命名空间
use Think\Controller;//use使用哪一个而命名空进。找Controller父类的文件

//http://localhost/ThinkPHP/index.php/Home/Diyi/Test

class DiyiController extends Controller
 {

	  //验证码
	  function YZM() //YZM--操作方法
	  {
		  //第一步,造验证码的对象
		  $v = new \Think\Verify();//通过命名空间来找到类。在初始命名空间下的Think,下面有Verify.class.php
		  //调用对象里的方法
		  $v->entry();//调用这个entry()方法就可生成验证码
	  }

	  function xianshi()
	  {
		 //这个方法在执行是,把页面打印出来
		 $this->display();
	  }

 }

显示的结果:

2、

这个页面需要生成多个验证码-----如何进行区分??

    entry()方法里可以写参数,写参数代表的是给验证码进行区分,区分是第几个

 

 3、

例子:

<?php
namespace Home\Controller;//这个文件的命名空间
use Think\Controller;//use使用哪一个而命名空进。找Controller父类的文件

//http://localhost/ThinkPHP/index.php/Home/Diyi/Test

class DiyiController extends Controller
 {
      //验证码
	  function YZM() //YZM--操作方法
	  {
		  $config =
		  array(
		        ‘fontSize‘    =>   30,
		        ‘length‘      =>    3, 

				            );
		  $v =  new \Think\Verify($config);
		  $v ->entry();

		  //第一步,造验证码的对象
		  $v = new \Think\Verify();//通过命名空间来找到类。在初始命名空间下的Think,下面有Verify.class.php
		  //调用对象里的方法
		  $v->entry();//调用这个entry()方法就可生成验证码
	  }

	  function xianshi()
	  {
		 //这个方法在执行是,把页面打印出来
		 $this->display();
	  }

 }

  

给验证码加参数

显示的结果:

 4、验证码的字体

ttfs要有相应的文件:

【2】                          【1】

【1】英文的字体文件

【2】中文的字体文件

这个属性,可以设置要使用哪一个字体

 5、验证码的背景图片

useImgBg 默认是false,要改成true。改完之后,随机使用 ThinkPHP/Library/Think/Verify/bgs 目录下面的图片。

验证码的背景图片文件

例子:

<?php
namespace Home\Controller;//这个文件的命名空间
use Think\Controller;//use使用哪一个而命名空进。找Controller父类的文件

//http://localhost/ThinkPHP/index.php/Home/Diyi/Test

class DiyiController extends Controller
 {
      //验证码
	  function YZM() //YZM--操作方法
	  {
		  $config =
		  array(
		        ‘fontSize‘    =>   30,
		        ‘length‘      =>    3, 

			‘useImgBg‘ => true, 

				            );
		  $v =  new \Think\Verify($config);
		  $v ->entry();

		  //第一步,造验证码的对象
		  $v = new \Think\Verify();//通过命名空间来找到类。在初始命名空间下的Think,下面有Verify.class.php
		  //调用对象里的方法
		  $v->entry();//调用这个entry()方法就可生成验证码
	  }

	  function xianshi()
	  {
		 //这个方法在执行是,把页面打印出来
		 $this->display();
	  }

 }

换验证码的背景图片

显示的结果:

第一次,刷新:

第二次,刷新:

 6、中文验证码

找字体文件:

必须是ttf格式

把上面的文件复制到

<?php
namespace Home\Controller;//这个文件的命名空间
use Think\Controller;//use使用哪一个而命名空进。找Controller父类的文件

//http://localhost/ThinkPHP/index.php/Home/Diyi/Test

class DiyiController extends Controller
 { 

	  //验证码
	  function YZM() //YZM--操作方法
	  {
		  $config =
		  array(
		        ‘fontSize‘    =>   30,
		        ‘length‘      =>    3,
			//‘useImgBg‘ => true,

			‘useZh‘ => true,
			‘fontttf‘ => ‘simkai.ttf‘,

				            );
		  $v =  new \Think\Verify($config);
		  $v ->entry();

		  //第一步,造验证码的对象
		  $v = new \Think\Verify();//通过命名空间来找到类。在初始命名空间下的Think,下面有Verify.class.php
		  //调用对象里的方法
		  $v->entry();//调用这个entry()方法就可生成验证码
	  }

	  function xianshi()
	  {
		 //这个方法在执行是,把页面打印出来
		 $this->display();
	  }

 }

fontttf=‘‘表示:所示用哪一个字体。   fontttf =‘要写字体的文件名’

显示的 结果:

如果只设置‘useZh‘ => true,找不到字体,因为默认使用的是英文的

时间: 2024-08-04 16:19:38

PHP--TP框架----生成验证码的方式的相关文章

6月19 使用tp框架生成验证码及文件上传

ThinkPHP中自带能生成验证码的类:ThinkPHP/Library/Think/Verify.class.php 默认情况下,验证码的字体是随机使用 ThinkPHP/Library/Think/Verify/ttfs/目录下面的字体文件,我们可以指定验证码的字体 汉字的验证码:ThinkPHP/Library/Think/Verify/zhttfs/添加中文的字体格式 更改字体:ttf格式 关于验证码的一些知识点: 1.例题:通过验证码实现用户的登录,并利用jquery实现点击图片验证码

第二百七十节,Tornado框架-生成验证码图片,以及验证码结合Session验证

Tornado框架-生成验证码图片,以及验证码结合Session验证 第一.生成验证码图片  生成验证码图片需要两个必须模块 1.python自带的random(随机模块) 2.Pillow()图像处理模块里的PIL(图像库),为第三方模块,需要安装 封装验证码图片生成插件py 在封装文件里先导入random(随机模块),和Pillow()图像处理模块里的所需py文件 封装验证码图片生成插件功能,调用后返回验证码图片,和字符串类型验证码,两个返回值 注意:验证码需要一个字体文件,这个字体文件必须

tp框架实现验证码

今天来看一个小插件. tp框架是怎么实现验证码的. 又到了我们千篇一律的时候了,首先呢,先做一个用来显示的html界面名为:zhuce.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3

tp框架之验证码

控制器 function yzm() { /*$config = array( 'fontSize' => 30, // 验证码字体大小 'length' => 4, // 验证码位数 'useImgBg'=>true, 'useZh'=>true, 'fontttf'=>'SIMYOU.TTF', 'zhSet'=>'啊是的分个好就看了' );*/ //$v=new \Think\Verify($config); //随机自己定义的验证码 $v=new \Think\

生成验证码的方法集合(一)

用户在注册或登录时,为了进一步保证安全性,越来越多的网站开始采用动态生成的图形码或附加码进行验证.验证码技术就是在服务器端生成一个随机数,并将其保存在内存中,然后将随机数写入设计好的图片中,发送给浏览器,并以图片形式显示给最终用户.前几天,在完成一个利用Script进行用户注册及登录的验证时,在加入验证码这一块的时候,发现了各种生成验证码的方式,就利用空余时间做了一个整理及重写.那么我的博客之旅就从这篇验证码的生成开始了. 下面主要是几种不同的生成验证码的方式: 1.绘制纯数字的网站验证码 本实

Thinkphp框架拓展包使用方式详细介绍--验证码实例(十一)

拓展压缩包的使用方式详细介绍 1:将拓展包解压:ThinkPHP3.1.2_Extend.zip   --> 将其下的 \Extend  文件全部复制 2:将复制的文件放入项目中 E:\wamp\www\thinkphp\ThinkPHP\Extend(安装的时候这里面是空文件),你自己的项目目录 即可 =============================以下是,拓展包中验证码的使用======================================== 比如用到拓展包的验证码:(

spring mvc框架下使用kaptcha生成验证码

1.下载jar包并导入. kaptcha-2.3.2.jar 2.spring 配置文件 applicationContext.xml. <bean id="captchaProducer" class="com.google.code.kaptcha.impl.DefaultKaptcha"> <property name="config"> <bean class="com.google.code.ka

TP框架---thinkphp基础知识

php框架    发瑞 一.真实项目开发步骤: 多人同时开发项目,协作开发项目.分工合理.效率有提高(代码风格不一样.分工不好) 测试阶段 上线运行 对项目进行维护.修改.升级(单个人维护项目,十分困难,代码风格不一样) 项目稳定的运行阶段 项目停止运行(旧项目的人员已经全部离职,新人开发新项目)   二.问题: 1. 多人开发项目,分工不合理,(html   php   mysql) 2. 代码风格不一样,后期维护十分困难 3. 项目生命周期十分短,项目生命没有延续性,造成资源浪费.人员浪费

tp框架知识集锦(3.2)

php框架 一.真实项目开发步骤: 多人同时开发项目,协作开发项目.分工合理.效率有提高(代码风格不一样.分工不好) 测试阶段 上线运行 对项目进行维护.修改.升级(单个人维护项目,十分困难,代码风格不一样) 项目稳定的运行阶段 项目停止运行(旧项目的人员已经全部离职,新人开发新项目)   二.问题: 1. 多人开发项目,分工不合理,(html   php   mysql) 2. 代码风格不一样,后期维护十分困难 3. 项目生命周期十分短,项目生命没有延续性,造成资源浪费.人员浪费 4. 项目不