로그인시 자동 쪽지 도착 알림 소스 넣을시 쪽지왔다는 팝업만 무한으로 뜹니다

2021-04-25 (일) 07:50:49 4,230

밑에 소스를추가시에 마지막 쪽지 알림이 팝업으로 뜨긴하는데 여기서 클릭을 하면 쪽지창으로 넘어가지않고 무한으로 알림창만 뜹니다 이부분을 어떻게 설정해야될까요? 제버전은 그누5.4버전입니다

그누보드5 / theme / head.sub.php 하단에 내용 추가

<?php
//로그인시 쪽지 왔는지 알려주는
if ($is_member) {
    //쪽지 테이블에서 마지막 쪽지를 읽어온다.
    $sql = "select * from {$g5['memo_table']} where me_recv_mb_id = '{$member['mb_id']}' and me_read_datetime = '0000-00-00 00:00:00' order by me_id desc limit 0,1 ";
    $result = sql_fetch($sql);    
    $get_nick = get_member($result['me_send_mb_id'], $fields='mb_nick');
    if ($result) {
        //새창을 띄워준다.
        $msg = "{$get_nick['mb_nick']} 님으로부터 쪽지가 도착했습니다.";
        $url = G5_BBS_URL."/memo.php";
?>
<script>
    alert("<?php echo $msg?>");
    window.open("<?php echo $url?>", "win_memo","width=620, height=620");
</script>
<?php
    }
}
?>

|

답변 3개

memo_table 에 읽음 처리가 필요하겠네요 읽은 건 다시 안읽도록 하고... 

생각을 해보세요

memo.php를 호출하지만 memo.php 에서도 맨처음head.sub.php를 만나게 되니

위 코드가 실행 되면서 또 팝업창이 뜨지않겠요?

메모view, 메모form 모두 위 코드가 작동 하지않도록 하세요

if ($is_member) { -->수정

if ($is_member && strpos($_SERVER['PHP_SELF'], 'memo') !=false) {

2021-04-25 (일) 17:49:29

쿠키나 세션에

$result['me_id']값을 넣어서

비교한 후에 다르면

alert()이 나오게 처리하면 될 거 같습니다.

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