网站上,最讨厌的就是验证码。这个,用过12306的人都知道……当然,个人认为thinkcmf比12306更为变态。毕竟12306随便点点就行了,thinkcmf睁大眼睛琢磨半天还是输错了。
我们使用thinkcmf可不是为了它的验证码。所以,不管是开发,还是随便学习一下,首先要做的,就是把它的验证码去掉,节省时间,更重要的是,节省自己的精力。
要达到我们的需求,其实就2步:
1、把前端的输入框去掉
2、把控制器的验证去掉
代码如下:
// login.html
<div class="form-group">
<div style="position: relative;">
<input type="text" name="captcha" placeholder="验证码" class="form-control captcha">
<captcha height="32" width="150" font-size="18"
style="cursor: pointer;position:absolute;right:1px;top:1px;"/>
</div>
</div>
控制器里有两段,一个是从前端获取数据,判定是否为空,一个是对数据进行验证。
if (empty($captcha)) {
$this->error(lang('CAPTCHA_REQUIRED'));
}
if (!cmf_captcha_check($captcha)) {
$this->error(lang('CAPTCHA_NOT_RIGHT'));
}
后记,移动互联网时代,第三方登陆越来越普遍,快,安全。所以,如果有时间,以后写一下验证码的原理,主要的精力还是放在其它方面。这里,只是简单的提醒一下研究代码要有方式。
这个思维方式重要。