2017-01-18 2 views
1

특정 주제를 찾고 있었지만 찾고있는 것이 없습니다.로그 아웃 페이지 - ph

<?php 
    if(!isset($_SESSION)) 
     { 
      session_start(); 
     } 
     session_unset(); 
     unset($_SESSION["id"]); 
     unset($_SESSION["sign"]); 
     unset($_SESSION["lang"]); 
     unset($_SESSION["usertype"]); 
     session_destroy(); 
     echo '<META HTTP-EQUIV="Refresh" CONTENT="0; URL=./index.php?lang=en">'; 
    ?> 

을 그리고 모든 내가 피하고자하는 하나의 귀찮은 일을 제외하고 잘 작동 : 나는 사용자 로그 아웃에 대한 PHP 코드를 사용하고 있습니다. 사용자가 로그 아웃 버튼을 누르면 초기 페이지가 표시되기 전에 잠시 동안 빈 페이지가 나타납니다 ...이 동작을 제거 할 수 있습니까? - 그 동안 아무 것도 보여주고 싶지는 않지만 사용자를 홈페이지로 리디렉션하려고합니다.

+3

메타 새로 고침을 사용하지 마십시오 홈 페이지로 리디렉션 헤더를 사용하여, 단지 헤더 리디렉션을 사용 . 'header ('Location : ./index.php?lang=en');' –

답변

0

봅니다 라인 교체 다음 함수 호출로

echo '<META HTTP-EQUIV="Refresh" CONTENT="0; URL=./index.php?lang=en">'; 

을, 그리고 물론, 페이지를 새로 triying 만 PHP는 리디렉션 inestead을 수행하기 위해 당신의 URL 매개 변수를 제공합니다.

Redirect("index.php"); 

function Redirect($url, $statusCode = 303) 
{ 
    header('Location: ' . $url, true, $statusCode); 
    die(); 
} 
0

대신 unset() 모든 변수가 단지 반환하기위한 session_unset() & session_destroy()를 사용하고 모든 세션 변수를 파괴하는 것은 다음

session_unset(); 
session_destroy(); 
header('Location: http://yourwebsite.com');