CodeIgniter Captcha拒绝工作

时间:2014-06-03 22:31:23

标签: php codeigniter wamp captcha

我知道有一万亿个类似的问题但是NONE已经能够帮助我了。以下是小样本代码:

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Captcha extends CI_Controller {

public function index(){ 

    $this->load->helper('captcha');
    $this->load->helper('url');

    $cap_settings = array(
        'word'          => 'Random word',
        'img_path'      => './images/captcha/',
        'img_url'       => base_url().'captcha',
        'font_path'     => './fonts/hardcorium.ttf',
        'img_width'     => '300',
        'img_height'    => '50',
        'expiration'    => 1800
    );

    $cap = create_captcha($cap_settings);

    echo $cap['image'];
}
}

以下是我所知道的:

  1. 使用WAMP localhost
  2. 加载GD2库(php_gd2)
  3. 我使用相同的路径在控制器的索引上创建了html链接 显示所需文件并且它们正常工作
  4. 使用过绝对路径和相对路径
  5. Captcha文件夹存在于应用程序文件夹
  6. 没有显示任何内容,并且firebugs没有错误,CI也没有。我不知道可能出现什么问题。

2 个答案:

答案 0 :(得分:0)

在视图页面中,表单必须采用以下方式: -

<?php echo form_open_multipart(path,'class="form-horizontal"'); ?>

对captcha文件夹必须有777的权限,因此我们也可以读取验证码。您可以通过以下方式授予权限: -

在终端

中写下以下行

sudo chmod -R 777 path

请检查以上两点,并正确检查图像路径。

一定会帮到你

答案 1 :(得分:0)

  1. 使用权限777
  2. 在root上创建文件夹验证码
  3. 在root上创建字体文件夹并在其中放置字体文件。
  4. $ config [&#39; base_url&#39;] =&#39; http://localhost/yourproject/&#39 ;;在config.php
  5. class Captcha extends CI_Controller {
    
    public function index(){ 
    
    $this->load->helper('captcha');
    $this->load->helper('url');
    
    $cap_settings = array(
        'word'          => 'Random word',
        'img_path'      => './captcha/',
        'img_url'       => base_url().'/captcha/',
        'font_path'     => base_url().'/fonts/hardcorium.ttf',
        'img_width'     => '300',
        'img_height'    => '50',
        'expiration'    => 1800
    );
    
    $cap = create_captcha($cap_settings);
    
    echo $cap['image'];
     }
    }
    

    https://stackoverflow.com/a/39637942/2107318