2014-10-24 2 views
0

ID와 슬러그를 URL에서 변경해야하는 페이지가 있습니다. 내가 제대로 리디렉션되지 CodeIgniter의를 사용하고 내가 다른 ID 그것은 오류 에게 페이지를주고있다 와 동일한 페이지에 리디렉션 할URL에 다른 매개 변수가있는 같은 페이지에서 PHP 리디렉션

public function view_post() 
{ 
     $query = $this->db->query('SELECT * FROM `tbl_links` ORDER BY RAND() LIMIT 0,1'); 
     $src = $query->row(); 
     $URL = $src->URL; 
     $ID = $src->ID;   

     $tmpurl = parse_url($URL); 


     $scheme = $tmpurl['scheme']; 
     $host = $tmpurl['host']; 

     if(!empty($tmpurl['path'])) 
     { 
      $path = $tmpurl['path']; 
      $finalURL = $host . $path; 
     } 
     else 
     { 
      $finalURL = $host; 
     } 

     redirect(base_url() . 'index.php/post/view_post/'.$ID.'/'.$finalURL.''); 

} 

DB를에서 임의로 기록을 얻고있다

내가 필요 <iframe>

의 URL 표시 원하는 URL

http://localhost:81/link/index.php/post/view_post/1/url comes here 
+0

사용'헤더해야한다. 'Header ('Location : $ URL', false, 300); ' – Rimble

+0

내가 도울 수 있는데 왜 리디렉션을 원하고 리디렉션을 중지해야합니까? –

+0

ifram에 임의의 웹 페이지를 표시하고 싶습니다. 내 페이지를 새로 고침하면 URL이 변경되고 새 페이지가 표시됩니다. –

답변

0

리디렉션 URL이 올바른지 확인하십시오. $ 호스트 이름을 포함하는 $ finalURL과 last를 연결하기 때문에 잘못되었을 수도 있습니다. 이 리다이렉트 라인을 주석 처리하고 url을 출력하십시오. 확인 된 출력 URL이 올바른지 확인하십시오.

url이 정확하고 사후 컨트롤러에 모두 이상이 있으면 htaccess 문제 일 수 있습니다. '당신은 심지어 리디렉션 코드에 추가 할 수 있습니다 : ('$의 URL 위치 ')
https://ellislab.com/forums/viewthread/151471/#870328

+0

내 URL은 괜찮지 만 논리가 표시되지 않습니다. 내가 가진이 로컬 호스트와 같은 URL : 81/링크/index.php에/1/URL의 1 후에는 localhost를 같이 제공되는 페이지 새로 고침 : 81/링크/index.php를/2/URL을 2 후 새로 고침 다시 로컬 호스트 : 81/링크/index.php에/3/URL 3 의 등 –

+0

게시물보기 방식에 하나의 기본 매개 변수 – Nikhil

0

이것은

public function view_post($action = NULL) 
{ 

    if(isset($action)){ 
     include "http://" . substr($action, strrpos($action , '/')); 
    } else { 

     $query = $this->db->query('SELECT * FROM `tbl_links` ORDER BY RAND() LIMIT 0,1'); 
     $src = $query->row(); 
     $URL = $src->URL; 
     $ID = $src->ID;   

     $tmpurl = parse_url($URL); 


     $scheme = $tmpurl['scheme']; 
     $host = $tmpurl['host']; 

     if(!empty($tmpurl['path'])) 
     { 
      $path = $tmpurl['path']; 
      $finalURL = $host . $path; 
     } 
     else 
     { 
      $finalURL = $host; 
     } 

     redirect(base_url() . 'index.php/post/view_post/'.$ID.'/'.$finalURL.''); 
    } 
} 
+0

오류 메시지를주기에 필요한 : (4)을 포함한다 : 스트림을 열지 못했습니다 : 해당 파일이나 디렉토리가 없습니다. –

+0

finalUrl이 URL이고 부분 URL이 아닙니까? echo $ action을 수행하십시오. 주사위; 여기에 결과를 게시하십시오. –

+0

직후 : if (isset ($ action)) { –

관련 문제