CodeIgniter HMVC 모듈을 사용해 폼 검증을 하면 콜백함수가 안먹힌다.

 

$this->form_validation->set_rules( 'username', 'Username', 'callback_username_check' );

 

콜백을 호출하면 Form_validation.php의    

if ( ! method_exists($this->CI, $rule))에서 클래스 메쏘드를 찾을수 없음

 

삽질하다가 구글링을 했는데 오호 역시 구글 ^^;;

 

http://www.mahbubblog.com/php/form-validation-callbacks-in-hmvc-in-codeigniter/

http://codeigniter.com/forums/viewthread/92212/P90/#578755

 

application/libraries/MY_Form_validation.php 파일 추가

class MY_Form_validation extends CI_Form_validation
{
   
function run($module = '', $group = '')
{        
       
(is_object($module)) AND $this->CI =& $module
;
        return
parent::run($group
);
   
}    
}
/* End of file MY_Form_validation.php */

/* Location: ./application/libraries/MY_Form_validation.php */

 

폼검증부분에서 $this->form_validation->run()  부분을 아래와 같이 $this 추가

if ($this->form_validation->run($this)) {
   
...
}

 

태그 : CodeIgniter

http://codeigniter.com/에서 최신버전 다운로드

 

코드이그나이터 압축을 풀면 구조는 아래와 같다.

/system/
/system/application/
/user_guide/
index.php


/system/밑에 application을 상위디렉토리로 이동한다(관리가 용이함 ^^)

index.php에서 application 경로 수정.

/system/
/application/
/user_guide/
index.php

 

 

* 멀티도메인 또는 개발&실서버를 같이 돌릴경우 application 폴더를 2개로 복사.

/system/
/app_dev/ (개발서버)
/app_live/ (실서버)

index.php

 

/index.php 를 /app_dev/와 /app_live에 각각 복사하고 i

/system/
/app_dev/index.php
/app_dev/index.php

 

/app_dev/index.php와  /app_live/index.php 경로 수정하기

$system_folder = "../system";
$application_folder = "../app_dev";

$system_folder = "../system";
$application_folder = "../app_live";


/.htaccess 파일을 추가해 각각 도메인별로 경로세팅

RewriteEngine on

RewriteCond %{HTTP_HOST}  aaa.kr$ [NC]
RewriteCond %{REQUEST_URI} !^/app_live/.*$
RewriteRule ^(.*)$  /app_live/$1 [L]

RewriteCond %{HTTP_HOST}  test.hosting.com$ [NC]
RewriteCond %{REQUEST_URI} !^/app_dev/.*$
RewriteRule ^(.*)$  /app_dev/$1 [L]

 

/app_dev/.htaccess /app_live/.htaccess

RewriteEngine on
RewriteCond $1 !^(index\.php|robots\.txt)
RewriteRule ^(.*)$ index.php/$1 [L]

 

css, images, js등은 RewriteCond에 추가해서 / 로 빼줘도 되지만

관리효율성 차원에서 app_dev/css, app_dev/images 처리하는게 좋음.

 

효율적인 구조관리

http://codeigniter.com/wiki/Modular_Extensions_-_HMVC 

압축풀어 app_dev/libraries/ 밑에 모두 복사

 

app/dev/modules 폴더 만들고 구조관리

app/dev/modules/member

app/dev/modules/member/controller

app/dev/modules/member/models

 

다른 모델 호출시 $this->load->model('경로명/모델명');

실행   echo modules::run('test/controller/함수명');

 

 

보안관련

http://kylehasegawa.com/codeigniter-csrf-xsrf-library

 

 

 

 

태그 : CodeIgniter

뉴스를 읽다보면 가끔 댓글을 달고 싶어지는 경우가 있다.

그렇지만 감히 해당 기사에 댓글을 달 생각조차 못한다.

자신과 생각이 다르면 죽자고 달려는 일부 악플러들 때문이다.


그래서 메신저로 아는 사람에게 링크 주면서 나의 견해를 전하고 반응 받는다.
그런데 다른 사람에게도 알릴려면 똑같은 걸 되풀이 해야한다.
번거롭기도 하고 무엇보다 메신저를 닫으면 주고받은 의견들이 날아가 버린다 ㅠ.ㅠ

 

그래서 필요한 것이 뉴스 공유 서비스이다.

한국판 디그를 표방하면서 시작했던 뉴스2.0(news2.co.kr)부터 얼마전 묻닫은 펌핏(pumfit.com)까지 소셜 뉴스 사이트들이 생겼다 자리잡지 못하고 사라지곤 했다.


얼마전에 생긴 펌플(pumpl.com)도 있는데 내가 원하는 스타일이 아니다.


그래서 직접 만들기로 했다. ^^

 

원래는 1월1일 오픈하려고 했는데 퇴근하면 왜 이리 시간이 잘 가는지.

게다가 주말만 되면 졸립다. 연말이라 각종 모임에 행사 쫓아다니다 보니

새해가 밝았고 1월도 어느덧 중반을 향해 달리고 있었다.


그러던 중 우연히 매쉬업 경진대회 글을 보게 되었다.

제출 마감일이 20일이었는데 이거다 싶었다.

경진대회 제출을 목표로 하면 코딩에 속도가 좀 붙지 않을까 ㅋㅋ


지난 주말에 달릴려고 했는데 금토 회사워크샵이라 다녀와서 퍼져버렸다.
결국 월화수 퇴근하고 거의 밤새다시피 해서 제출마감시한 30분전에 신청했다.
원래 구상했던 것에 절반도 못 만들었는데 이때를 놓치면 언제 완성할지 몰라서

일단 돌아가는 것만 보고 제출했다.


아직 미완이지만 차차 기능들을 보완할 생각이다.
개인적 필요에 의해 만든 것이니 서비스가 사라지는 일은 없을 것이다. ^^;

우왑 소개를 계기로 그동안 접었던 블로그도 다시 시작해볼까 한다.


 우왑바로가기

 2010 매쉬업 경진대회 우왑 소개페이지 바로가기(투표 좀... ^^)