2014-09-12 2 views
0

내가 간단한 PHP 함수가 종료 : 아무리 내가 사용하는 리디렉션 어떤 CI 기능CodeIgniter의 캔트 사용 리디렉션 기능이

function edit($id = NULL){ 
    $user_id = 25; 
    $event = $this->database->GetSingle('events', array('id' => $id, 'userid' => $user_id)); 
    $this->data['event'] = $event; 

    if($this->form_validation->run('event/createedit') == FALSE){ 
    $this->ajaxValidation('event/createedit'); 
    }else{ 
    if($event == NULL){ 
     $this->database->Insert('events', $data); 
     $event_id = $this -> database -> GetLastID(); 


    }else{ 
     $this->database->Update('events', $data, array('id' => $event['id'])); 
     $event_id = $event['id']; 
    } 
    redirect('user/event/show/'.$event_id); 
    } 
} 

과, 그것은> 작업 .. 하지만 크롬 개발 툴에없는 네트워크 탭 전 어떤 페이지를로드하려고 시도하지만 다른 액션이 무엇인지 알아보십시오.

주소가 좋음, 기능이 show($id = null)도 좋음 누군가 아이디어가 있습니까?

+0

이 함수에 Ajax 호출을 사용을하고 있습니다. ajax를 사용하는 경우 리디렉션 기능이 작동하지 않습니다. –

+0

나는 그 작업에 대한 단순한 버튼을 사용했다. :) 글쎄, 내가 만든 .. 내 양식을 제출하는 함수를 만든 아약스 .. .. 그리고 내가 event_id를 반환했을 때 나는 함수를 사용했다. 자바 스크립트 location.href 함수는 페이지를 변경합니다. – Scorpioniz

답변

0

Codeigniter의 리디렉션 문은 리디렉션 헤더 문을 사용하여 지정된 웹 페이지로 사용자를 보냅니다.

이 문은 다음과 같은 방법으로로드 된 URL 도우미에 있습니다 :

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

리디렉션 기능은 로컬 URI를로드 함수 호출의 첫 번째 매개 변수에 지정에 지정된 옵션을 사용하여 내장하여 설정 파일.

두 번째 매개 변수를 사용하면 개발자가 다른 HTTP 명령을 사용하여 리디렉션 "위치"또는 "새로 고침"을 수행 할 수 있습니다.

CodeIgniter 문서에 따르면 "위치는 빠르지 만 Windows 서버에서는 가끔 문제가 될 수 있습니다."

예 :

if ($user_logged_in === FALSE) { 

    redirect('/account/login', 'refresh'); 

} 
+0

이미 내 자동로드에 url 도우미가 있습니다. if ($ this-> form_validation-> run ('event/createedit') == FALSE)'문 앞에 넣으면 redirect() 함수가 작동합니다. 문 및 그게 새로 고침이나 도움이 안되는 위치 .. 그냥 시도. – Scorpioniz