搜索
系统检测到您的用户名不符合规范:

关于ThinkPHP的验证码验证总是报错的解决办法

浏览:3291 发布日期:2016年06月18日 分类:技术分享 关键字: ThinkPHP,验证码
验证码生成后,但是验证总是不对.
看了大家的说法,有的说将验证的方法放在Common/function.php中, 然后在控制器中调用这个方法就可以解决了.
但是实际上并不可以.
真正的问题是手册上的例子是错的.
手册上的代码是.// 检测输入的验证码是否正确,$code为用户输入的验证码字符串
function check_verify($code, $id = ''){
$verify = new \Think\Verify();
return $verify->check($code, $id);
}
上面有id ,问题就在这里,如果你只生成一个验证码,就不需要加上id

我的代码如下:
生成验证码: /**
* 生成验证码
* @return [type] [description]
*/
public function verify()
{

$config = array(
'fontSize' => 30, // 验证码字体大小
'length' => 4, // 验证码位数
'useNoise' => false, // 关闭验证码杂点

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

}
验证码检验方法:
这个方法放在function.php中也可以.我这里是放在控制器中了.
注意,我这里是没有$id 这个参数的protected function check_code($code){
$verify = new \Think\Verify();
return $verify->check($code);
}
最后,调用检测. public function login()
{
//接收数据
$cid = I('CorporateId');
$userName = I('LoginName');
$password = I('Password');
$code = I('verify');

//检验验证码
if(!$this->check_code($code))
{
$this->returnMsg(1,'captcha is wrong');
}
最佳答案
评论() 相关
后面还有条评论,
评论支持使用[code][/code]标签添加代码
您需要登录后才可以评论 登录 | 立即注册
收藏
tp_zuoan
积分:335 等级:LV2
热点推荐
(追記) (追記ここまで)
最新更新

我们

合作

网站

信息

ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。

AltStyle によって変換されたページ (->オリジナル) /