lukeme 发表于 2011-5-24 09:28:08

我也碰到过类似问题,最后直接修改了它自身的辅助函数。

qq402717704 发表于 2011-5-28 18:00:36

回复 rockey329 的帖子

什么函数? 是最新版本的吧?

rockey329 发表于 2011-5-28 23:00:38

回复 qq402717704 的帖子

2.0,看中文手册吧,那里有介绍的

phproot 发表于 2011-5-29 08:43:59


public function captcha($refresh='0')                {                        $session_word = $this->session->userdata('captcha_word');                        if (empty($session_word) || !empty($refresh)){                                $vals = array(                                            'img_path' => './images/captcha/',                                            'img_url' => base_url().'images/captcha/',                                      'font_path' => './system/fonts/captcha.ttf',                                         'img_width' => '100',                                          'img_height' => '30',                                            'expiration' => '7200'                                  );                                                $cap = create_captcha($vals);                                $data = array(                      'captcha_image'=> $cap['image'],                      'captcha_word'   => $cap['word']                        );                        $this->session->set_userdata($data);                        return $cap['image'];                        }else{                                return $this->session->userdata('captcha_image');                        }                        }



phproot 发表于 2011-5-29 08:46:41

很简单,设定判断就好了。
每次刷新都把新的文件地址,以及生成的认证吗数据写入session。如果session里有认证码了,就不执行。如果没有,则执行。

设定一个参数,如果为1的时候则执行更新认证码。

之后搞一个认证码判断就好了。

phproot 发表于 2011-5-29 08:50:43

当然你也可以在用户执行刷新的时候去删除相关文件。但是现在服务器的硬盘都是TB级的。一个图片才占多少。就算你100万/秒的访问量好了。

一个文件4k*100万。才4个G。呵呵。1~2千G的硬盘,4G算什么哦。

super250 发表于 2011-6-1 16:26:06

system/helpers/captcha_helper.php
里面
改一下
                if ($use_font == FALSE)
                {
                        $font_size = 6;
//                      $x = rand(0, $img_width/($length/3));
                        $x = 3;                        $y = 0;
                }

zyelec 发表于 2011-6-2 14:00:20

坐标设置的不能太靠边

麻雀 发表于 2011-6-28 09:24:00

为什么就没有一个完整的实例代码放出来呢~~~~~~这东西叫我等怎么学啊,手册里怎么还有数据库....太夸张了吧,刚学CI前面的SESSION还没完全弄熟,现在想学这个验证码,就是想看看这个验证是怎么写到SESSION中的,结果手册之中只字未提......如何学习啊   

jeongee 发表于 2011-6-28 09:26:14

麻雀 发表于 2011-6-28 09:24 static/image/common/back.gif
为什么就没有一个完整的实例代码放出来呢~~~~~~这东西叫我等怎么学啊,手册里怎么还有数据库....太夸张了吧 ...

我建议你不要使用那个,你就在网上随便搜索个PHP 验证码类库放到libraries下就可以使用啦
页: 1 [2] 3
查看完整版本: 关于CI的captcha生成验证码有个bug,如何修正?