Captcha不在CI工作

P.Y*_*ema 10 php codeigniter

我写了一小段代码,它应该适用于Codeigniter中的验证码.代码应该只是打印创建验证码的时间,第一次尝试.但它似乎甚至没有创建验证码本身.我确定帮助程序已加载,这是在构造函数中完成的.接下来,应该有将图像写入文件夹的正确权限.任何人都知道它为什么不能正常工作?

defined('BASEPATH') OR exit('No direct script access allowed');
class Register extends CI_Controller{

     public function __construct(){
        parent::__construct();  
        $this->load->helper('captcha');
    }

    public function generate_captcha(){
        $vals = array(
            'img_path' => './captcha/',
            'img_url' => base_url().'captcha/',
        );
        echo base_url().'assets/images/captcha/';
        $captcha = create_captcha($vals);

        echo 'cap time: ' . $captcha['time'];

        $captcha_image = $captcha['image'];
        return $captcha_image; 
    }

}
Run Code Online (Sandbox Code Playgroud)

编辑 它是否与此代码之外的任何内容有关?我已经为文件夹设置了正确的权限,因此它可以将图像写入目录.

Sus*_*ple 0

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

class Mycaptcha extends CI_Controller  {

public function __construct() {

    parent::__construct();  
        $this->load->helper('captcha');
        $this->load->helper('url');
    }

    public function index() { 
        $vals = array(
            'img_path' => './captcha/',
            'img_url' => base_url().'/captcha/',
        );

        $captcha = create_captcha($vals);
        $captcha_image = $captcha['image'];

        print_r($captcha);
    }
}
Run Code Online (Sandbox Code Playgroud)

确保您有:

  1. 在 root 上创建文件夹 captcha,权限为 777
  2. 在config.php中$config['base_url'] = 'http://localhost/yourproject/';