그누보드 로그아웃 버튼 누르면 그 페이지에 머물게 하고 싶습니다.
본문
<?php
include_once('./_common.php');
if(function_exists('social_provider_logout')){
social_provider_logout();
}
// 이호경님 제안 코드
session_unset(); // 모든 세션변수를 언레지스터 시켜줌
session_destroy(); // 세션해제함
// 자동로그인 해제 --------------------------------
set_cookie('ck_mb_id', '', 0);
set_cookie('ck_auto', '', 0);
// 자동로그인 해제 end --------------------------------
if ($url) {
if ( substr($url, 0, 2) == '//' )
$url = 'http:' . $url;
$p = @parse_url(urldecode($url));
/*
// OpenRediect 취약점관련, PHP 5.3 이하버전에서는 parse_url 버그가 있음 ( Safflower 님 제보 ) 아래 url 예제
// http://localhost/bbs/logout.php?url=http://sir.kr%23@/
*/
if (preg_match('/^https?:\/\//i', $url) || $p['scheme'] || $p['host']) {
alert('url에 도메인을 지정할 수 없습니다.', G5_URL);
}
$link = $url;
} else if ($bo_table) {
$link = get_pretty_url($bo_table);
} else {
$link = G5_URL;
}
run_event('member_logout', $link);
goto_url($link);
?>
어떻게 수정해야하죠?
답변 2
해당 페이지에 머물면서 처리되기 원하신다면 해당 페이지의 주소를 변수로 전달해서 해당 페이지로 돌아오게 하는 방법아니면 ajax로 해서 처리해야 하는 부분입니다.
※ https://marscompany.tistory.com/35
logout.php 는 수정하지 않아도 됩니다. (전달받은 $url 값이 있으면 해당 주소로 이동하도록 되어 있습니다.)
아웃로그인 스킨파일의 [로그아웃] 버튼 링크 주소에 url 파라미터를 추가해주면 됩니다.
(logout.php?url=[유지할 페이지 주소])
* /theme/baisc/skin/outlogin/basic/outlogin.skin.2.php (스킨파일 경로가 맞아야 함)
<a href="<?php echo G5_BBS_URL ?>/logout.php" id="ol_after_logout"><i class="fa fa-sign-out" aria-hidden="true"></i> 로그아웃</a>
->
<a href="<?php echo G5_BBS_URL ?>/logout.php?url=<?php echo login_url($urlencode) ?>" id="ol_after_logout"><i class="fa fa-sign-out" aria-hidden="true"></i> 로그아웃</a>