Как я могу получить библиотеку изображений codeigniter captcha

Как я могу получить библиотеку изображений codeigniter captcha. конфигурация требуется для определения 'img_path' => '', 'img_url' => '',, но у меня нет такой папки или изображений, я также перечитал так много руководств и документации по codeigniter ... но никто не описывает, где находится эта библиотека капчи ..

Функция

public function captcha() {
        /* Set a few basic form validation rules */
        $this->form_validation->set_rules('name', "Name", 'required');
        $this->form_validation->set_rules('captcha', "Captcha", 'required');

        /* Get the user's entered captcha value from the form */
        $userCaptcha = set_value('core/captcha');

        /* Get the actual captcha value that we stored in the session (see below) */
        $word = $this->session->userdata('captchaWord');



        /* Check if form (and captcha) passed validation */
        if ($this->form_validation->run() == TRUE &&
                strcmp(strtoupper($userCaptcha), strtoupper($word)) == 0) {
            /** Validation was successful; show the Success view * */
            /* Clear the session variable */
            $this->session->unset_userdata('captchaWord');


            /* Get the user's name from the form */
            $name = set_value('name');

            /* Pass in the user input to the success view for display */
            $data = array('name' => $name);
            $this->load->view('pages/captcha-success-view', $data);
        } else {

            /** Validation was not successful - Generate a captcha * */
            /* Setup vals to pass into the create_captcha function */
            $vals = array(
                'word' => 'Random word',
                'img_path' => '',
                'img_url' => '',
                'img_width' => '150',
                'img_height' => 30,
                'expiration' => 7200
            );

            print_r($vals);

            /* Generate the captcha */
            $captcha = create_captcha($vals);

            $data['captcha'] = $captcha;
            $data['image'] = $captcha['image'];

            /* Store the captcha value (or 'word') in a session to retrieve later */
            $this->session->set_userdata('captchaWord', $captcha['word']);

            /* Load the captcha view containing the form (located under the 'views' folder) */
            $this->load->view('pages/captcha-view', $data);
        }
    }

person KBK    schedule 24.06.2015    source источник
comment
у вас есть помощник загрузки капчи или какая у вас ошибка?   -  person Yes Kay Selva    schedule 24.06.2015
comment
Это только помощник по капче... нет папки с изображениями??   -  person KBK    schedule 24.06.2015
comment
вы должны указать путь к папке здесь 'img_path' =› '',   -  person Yes Kay Selva    schedule 24.06.2015


Ответы (1)


В CodeIgniter нет библиотеки капчи, но есть helper. Все, что вам нужно сделать, это сначала загрузить этот помощник, чтобы использовать капчу $this->load->helper('captcha');

И помните, вам необходимо создать папку в вашем проекте, куда CI будет помещать изображения капчи. Итак, если вы создадите имя папки «captcha» в корне вашего проекта, тогда ваш код будет (демо)

$this->load->helper('captcha');
$vals = array(
 'img_path' => 'captcha/',
 'img_url' => base_url('captcha'),
 'font_path' => 'assets/fonts/ALGER.TTF',
 'img_width' => '300',
 'img_height' => 80,
 'font_size' => 24,
 'colors' => array(
    'background' => array(255, 255, 255),
    'border' => array(0, 0, 0),
    'text' => array(0, 0, 0),
    'grid' => array(255, 40, 40)
  )
);

$cap = create_captcha($vals);

Теперь печатайте капчу где угодно echo $cap['image']

person Rejoanul Alam    schedule 24.06.2015