这篇关于yii加载自带验证码的方法的文章,觉得挺不错的,感兴趣的php开发者可以参考下,希望对大家在学习php的成长路上有所帮助!
Yii的源码包里面是自带有验证码的相关类的,因此在使用验证码的时候无需再加载外部验证码类来助阵了。下面本文将介绍一下如何在项目中加载Yii自带的验证码功能。
具体分三步:
(1)在需要加载验证码的controllers文件里面添加如下代码:
public function actions(){
return array(
'captcha'=> array(
'class'=>'Captcha',
'width'=>65, //默认120
'height'=>25, //默认50
'padding'=>0, //文字周边填充大小
'backColor'=>0xFFFFFF, //背景颜色
'foreColor'=>0x2040A0, //字体颜色
'minLength'=>4, //设置最短为4位
'maxLength'=>4, //设置最长为4位,生成的code在6-7直接rand了
'transparent'=>false, //显示为透明,默认中可以看到为false
'offset'=>1, //设置字符偏移量
'testLimit'=>0 //限制相同验证码出现的次数,0位不限制
)
);
}
(2)在controllers文件所对应的models文件里面添加如下代码:
<?php
......
public $verifyCode;//必须先定义
......
public function rules(){
return array(
......
//注意这里的'on'=>'login',即action=login的时候显示
array('verifyCode','captcha','on'=>'login','allowEmpty'=>!extension_loaded('gd')),
);
}
......
?>
(3)在需要加载验证码的views页面添加如下代码:
<?php
$this->widget('CCaptcha',
array(
'showRefreshButton'=>false,
'clickableImage'=>true,
'imageOptions'=>array(
'alt'=>'点击换图',
'title'=>'点击换图',
'id'=>'checkcodeImg',
'style'=>'cursor:pointer;'
)
)
);?>
总结
以上就是关于yii加载自带验证码的方法全部内容,希望这篇文章能够帮你解决如相关的PHP问题,更多请关注PHP栏目的其它相关文章!