채택완료

로그아웃 후 창 닫기.

 

goto_url($link);

 

부분을

 

goto_url('특정 페이지 URL');

 

이렇게 변경하면 특정 URL로 이동하는건 잘 되는데

로그아웃시에는 창이 그냥 경고 없이 닫히게 하고 싶습니다.

도움부탁드려요~

 

 

 

|

답변 5개 / 댓글 7개

채택된 답변
+20 포인트

안내메세지후 닫는 파일인

 

/bbs/alert_close.php를 보시면

 


<script>
alert("<?php echo $msg; ?>");
window.close();
</script>

 

이런 로직이 있는데

여기에서 alert을 안하고

그냥 닫으시면

 


<script>
window.close();
</script>

 

를 원하시는 부분에 넣어주셔야겠죠

 

<?php

// logout.php 을 참고해서 logout 처리

// php 코드영역

 

?>

<script>
window.close();
</script>

 

답변에 대한 댓글 6개

답변 감사합니다.
경고 없이는 어렵군요. 그냥 간단하게 만들면되서 어려운 함수까지는 괜찮을꺼 같아요.
그럼 그냥 창만 닫게 하려면 어떻게 해야 할까요? ;ㅁ;
@funnyrin 위에 적어드린게 가장 간단한것입니다.
저걸 bbs/logout.php 페이지

goto_url($link);에 적용 시키는 건가요?

(너무 몰라서 죄송합니다;)
@funnyrin

logout.php 에 적용을 시키시려면



//goto_url($link);
?>

<script>
window.close();
</script>

와 같이 되겠죠
정말 감사드립니다. ^^

답변 감사합니다.
초보라, 경고 없이라는게 이렇게 무식한 발언일줄이야;;;

그래도 조언 너무 감사드립니다.

 

그냥 경고창이 나와도 되니 창이 닫히게 하는 내용만 알려주시면 감사하겠습니다.

브라우저마다 정책이 조금씩 차이가 있지만 경고창 없이 닫기는 보안이슈로 지원하지 않는 경우가 있습니다. 참고하시기 바랍니다.

commom.lib.php에 추가적으로 함수를 만드셔야 할 것 같습니다.

goto_url_close($url) {

    $url = str_replace("&amp;", "&", $url);
    //echo "<script> location.replace('$url'); </script>";

    if (!headers_sent())
        header('Location: '.$url);
    else {
        echo '<script>';
        echo 'location.replace("'.$url.'");';

        echo 'self.close();';
        echo '</script>';
        echo '<noscript>';
        echo '<meta http-equiv="refresh" content="0;url='.$url.'" />';
        echo '</noscript>';
    }
    exit;

}

머 이런식으로요

답변에 대한 댓글 1개

답변 감사합니다.
경고 없이는 어렵군요. 그냥 간단하게 만들면되서 어려운 함수까지는 괜찮을꺼 같아요.
그럼 그냥 창만 닫게 하려면 어떻게 해야 할까요? ;ㅁ;

경고 없이 닫을수 없습니다.

사용하는 브라우저 마다 특성이 있기 때문에 일반창에서 닫을때는 항상 경고창이 뜹니다. 

 

답변을 작성하려면 로그인이 필요합니다.