2013-03-06 2 views
1

PHP에서 페이지를 다시로드하는 가장 좋은 방법은 무엇입니까? URL에서 이전 쿼리 문자열 값을 모두 제거 했습니까? PHP로 리디렉션PHP에서 쿼리 문자열 제거 및 페이지 다시로드

$url = parse_url($url, PHP_URL_PATH) 

을 그리고 header을 사용합니다 :

+0

헤더 ("Location : {$ _SERVER [ 'PHP_SELF']}"); 또는 헤더 ("Location :?"); ' –

+0

@JonathanKuhn :하지만 쿼리 문자열은 제거되지 않습니다 ... – Horen

+1

@Horen 귀하가 귀하의 의견을 게시하면서 편집했지만, 그렇습니다. '$ _SERVER [ 'PHP_SELF']'는 질의 문자열을 포함하지 않고 같은 페이지로 리디렉션합니다. –

답변

4

당신은 parse_url 기능으로 PARAMS을 취할 수

//it there is any parameter... 
if(count($_GET)) { 
    header('Location: '.$url); 
    die(); 
} 

당신은 출력을 생성하기 전에 header 기능을 사용할 수 있도록해야합니다. 또한 다른 경우에는 리디렉션되지 않도록 일종의 조건에서 header을 찾아야합니다.

+1

동일한 페이지의 맨 위에서이 링크를 실행하는 경우 무한 리디렉션 루프를 방지하는 방법은 무엇입니까? – mellamokb

+1

어떤 조건을 사용합니다. – Alvaro

+1

@mellamokbtheWise'if (! empty ($ _ GET)) header (...) ' –

관련 문제