kycool 发表于 2012-10-18 12:20:41

我看CI验证码

本帖最后由 kycool 于 2012-10-18 13:12 编辑

题外话:
         在论坛里看到很多发了很多关于CI验证码的帖子,有心得,也有各种求解;之前本来是想发一个关于验证码的帖子,可能是自己太懒了,一直没有发。我用CI没有查找什么资料,只是深入探究手册和captcha_helper的源码,所有问题都不是问题。有些人一遇到问题就发帖求解,请先问问自己有没有把所有的方法都尝试下,源码都摆在那里,为什么不尝试着去探究下源码呢。话说多了,直接上代码

一 验证码的使用
    用帮助方法的之前,请先查看帮助文件源码,看下你所有方法会返回个什么结果;如果你看都不看一下,以后一遇到问题就会头大。
    create_captcha这个方法会返回一个关联数组array('word' => $word, 'time' => $now, 'image' => $img);

    实例:
                  publicfunctionshow_captcha(){                        $vals=array(
                                        'word'=>rand(1000,10000),//显示纯数字,这里有人不知道怎么做
                                        'img_path'=>'./captcha/',
                                        'img_url'=>base_url()."captcha/",
                                        'img_width'=>'80',
                                        'img_height'=>'30',
                                        'expiration'=>5
                        );
                        $cap=create_captcha($vals);
                        $img=$cap['image'];
                        $time=$cap['time'];
                        $num=$cap['word'];
                        echo $img."<br/>------------<br/>".$time."<br/>------------<br/>".$num."<br/>-------------<br/>";
                }
      照葫芦画瓢运行下你就会明白了
      有些问题我不想说的太清楚,手册说的很明白
      
二   BUG
   2.1 自定义宽度所显示的数字超出边框的问题
          打开captcha_helper源文件,
                      if ($use_font == FALSE)                {
                        $font_size = 5;
                        //$x = rand(0, $img_width/($length/3));
                        $x=rand(0,20);//修改
                        $y = 0;
                }
                else
                {
                        $font_size      = 16;
                        //$x = rand(0, $img_width/($length/1.5));
                        $x=rand(0,20);//修改
                        $y = $font_size+2;
                }

      如果不懂,仔细看源码

       2.2验证码session的问题
            这根本不是个问题,自己添加相应的逻辑就可以达到你的要求;如果不会写,这是你自己的问题




jeongee 发表于 2012-10-18 12:51:49

"我看CI验证类"
标题改改,看了标题不知道你帖子要说什么,是验证码还是表单验证类
而且,验证码不是类,就是helper,呵呵呵

kycool 发表于 2012-10-18 13:13:27

jeongee 发表于 2012-10-18 12:51 static/image/common/back.gif
"我看CI验证类"
标题改改,看了标题不知道你帖子要说什么,是验证码还是表单验证类
而且,验证码不是类,就 ...

谢谢;

hu920629 发表于 2015-7-27 15:29:26

赞 刚好遇到这个问题 搞定
页: [1]
查看完整版本: 我看CI验证码