CI 묻고 답하기

제목 ci captcha를 사용하려고 하는데.
글쓴이 ci_beginne 작성시각 2009/10/26 16:40:33
댓글 : 1 추천 : 0 스크랩 : 0 조회수 : 28388   RSS

소스는 아래와 같습니다.

class Cap_test extends Controller {
 function __construct() {
  parent::Controller();
  $this->load->database();
 }


function prova(){
   $this->load->plugin('captcha');
    $this->load->library('validation');
    $rules['user']    = "required";
    $rules['captcha']    = "required|callback_captcha_check";
    $this->validation->set_rules($rules);

    $fields['user']    = 'userid';
    $fields['captcha']    = 'captcha';
    $this->validation->set_fields($fields);
    if ($this->validation->run() == FALSE)
    {
      $expiration = time()-300; // Two hour limit
//      $this->db->query("DELETE FROM captcha WHERE captcha_time < ".$expiration);
      $vals = array(
            'word'         => mt_rand(10274536, 90853127),
            'img_path'     =>  base_url().'uploads/',
            'img_url'     => base_url().'uploads/',
            'font_path'     => base_url() . 'system/fonts/texb.ttf',
            'img_width'     => '100',
            'img_height' => '30',
            'expiration' => '3600'
          );

           $cap = create_captcha($vals);
           print_r( $cap );
           exit;
}

}

call back 지정하기전에 값확인차 저렇게 찍어보았는데 아무것도 리턴이 안되네요.

오늘 하루종일 씨름하고 구글링도 해보고 하는데 texb.ttf 경로가 문제라고도 하고 당체 해결될 기미기 안보여서

질문 올립니다. ㅡㅡ

혹시 matchbox 사용이 문제가 될런지요.

ci 버전은 1.7.2 입니다.

 다음글 controller의 함수 호출 질문입니다. (3)
 이전글 svn을 사용하려면.. (6)

댓글

변종원(웅파) / 2009/10/26 17:58:39 / 추천 0
ci버전이 1.7.2라고 하셨는데 올리신 소스는 1.7.1 이전 소스입니다.
폼검증 부분이 많이 바뀌어었습니다.
위 소스는 작동을 안할겁니다.
매뉴얼 보시고 폼검증 부분 수정해서 사용하세요.
http://codeigniter-kr.org/user_guide/libraries/form_validation.html

일예로
$this->load->library('form_validation');
				
if ($this->form_validation->run() == FALSE)
{
	$this->load->view('myform');
}
else
{
	$this->load->view('formsuccess');
}
폼검증 라이브러리 선언부와 구문이 다 바뀌었습니다.