使用TP3.2.3 按照3.2.2手册
1 在项目下写\common\function.php,内容如下:
<?php
function check_verify($code, $id = ''){
$verify = new \Think\Verify;
return $verify->check($code, $id);
}
?>
2 在模块控制器写IndexController.class.php, 内容为:namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller {
public function index(){
$this->show('验证码测试页!');
}
//生成验证码
public function verify(){
$verify = new \Think\Verify;
$verify->codeSet = '0123456789';
$verify->entry();
}
//检测验证码
public function check_verify(){
$verify = I('get.code');
var_dump(check_verify($verify));
var_dump($verify);
}
}
3.1 测试, 生成验证码很顺利
3.2 但是检测验证码却总是false,各种方法折腾里一晚上了, 无果, 打印出get的内容,也看不出问题, 极度郁闷.

4 求指点迷津, 拜谢!!!
===============================================
后续
1 翻别人相似的帖子 有一位同学说他firebug里显示的验证码和网页中显示的验证码不一样 我赶快看看我的 还真是的 我的里面竟然也有两个验证码!!

23819是网页中显示的验证码 47314是未能显示的验证码 不知为何会出现这种问题??
2 我用get方法传递检验函数值 验证通过了 再次实验依然通过
boolean true
string '47314' (length=5)
3 推测 在firebug 当鼠标移动到第一个链接上时 显示小缩略图 同时网页中的图片区域也是被选中的状态 这说明同时生成了2张上下重叠的验证码 后一张验证码将前一张验证码给覆盖了 现在的问题是怎样才能不生成后一张验证码呢??4 看来这就是问题的根本了 但是不知道出现这个问题的原因 也不知道怎样解决
最佳答案
