thinkphp 3.1.3
导入框架源文件ThinkPHP ,新建单入口文件index.php,如下:
在浏览器中输入“http://localhost/ephp/tp/index.php”,即可显示如下:
Image类的buildImageVerify方法用于生成验证码,具体语法如下图:
在APP下找到Lib/Action下的控制器Index,在控制器中新建函数verify,是生成验证码的函数,具体如下:
在Index控制器下的index函数中,输入显示模板,模板放在Tpl/Index下,命名为index.html,如下:
在模板页输入,用于显示验证码及验证验证码,如下:
在模板页中,设置更换验证码的js , 如图;注意:不要忘了引用js文件;其中__PUBLIC__是模板替换,配置放在config.php中,详细如图:
在模板页添加form表单后,具体显示如下:
在Index控制器中,新建函数checkCode,用于验证表单输入值和验证码是否相同,函数如下:
显示结果:
BuildImageVerify方法不支持中文验证码;GBVerify方法显示中文验证码,详细如图:
在Index控制器中新建函数chinaVerify,如图所示:
同数字字母组成的验证码一样,在模板页中添加中文验证码的表单内容和js,如图所示:
输入网址,此时,验证码不显示中文汉字,只有背景,如下图所示:
查看ThinkPHP/Extend/Library/ORG/Util下的Image.class.php,找到其中的函数GBVerify,如图,此时字体为simhei.ttf。当前,此路径下无simhei.ttf文件,故此时不显示验证码
在电脑的C:\Windows\Fonts目录下查找simhei.ttf字体,将此字体复制到项目的ThinkPHP/Extend/Library/ORG/Util下,如图所示:
输入网址,此时可显示中文验证码,如下:
中文验证码验证方法和上面的相同,不存在大的差异,只修改输入的字段name值即可
上面的验证码区分大小写