채택완료

회원 가입 완료 후 alert창 부분 주석처리해도 되는걸까요..?

2020-01-31 (금) 12:09:23 6,288

990308069_1580439992.2567.png

990308069_1580439984.069.png

회원 가입 완료 후, 메인으로 버튼을 클릭하면

메인으로 이동이 되면서 위 이미지처럼

"축하합니다! 1레벨로 레벨업 하였습니다" 와 같은 alert창이 뜹니다.

경로를 찾아보니 /tail.php 파일에 있는 거 같은데..

Copy
<?php

if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가

 

//Level Up

if($member['mb_id']) { 

    //Auto Grade

    if($xp['xp_from'] > 1 && $xp['xp_to'] >= $xp['xp_from']) {

        if($member['mb_level'] >= $xp['xp_from'] && $member['mb_level'] <= $xp['xp_to']) {

            $level = $member['mb_level'];

            $n = 1;

            for($i = $xp['xp_from']; $i <= $xp['xp_to']; $i++) {

                $g = 'xp_auto'.$n;

                if($member['as_level'] < $xp[$g]) {

                    $level = $i;

                    break;

                }

                $n++;

            }

 

            if($level == $member['mb_level']) {

                ;

            } else {

                $member['as_msg'] = ($member['mb_level'] > $level) ? 4 : 3; //3 : 등업, 4 : 다운

                $member['mb_level'] = $level;

            }

        }

    }

 

    switch($member['as_msg']) { //Message

        case '1' : //레벨업

            $levelup_msg = aslang('alert', 'level_up', array($member['as_level'])); 

            break;

        case '2' : //레벨다운

            $levelup_msg = aslang('alert', 'level_down', array($member['as_level']));

            break;

        case '3' : //등업

            $mg = 'xp_grade'.$member['mb_level']; 

            $levelup_msg = aslang('alert', 'grade_up', array($xp[$mg], $member['mb_level'])); 

            break;

        case '4' : //등급다운   

            $mg = 'xp_grade'.$member['mb_level']; 

            $levelup_msg = aslang('alert', 'grade_down', array($xp[$mg], $member['mb_level'])); 

            break;

    }

 

    if($member['as_msg']) {

        // 회원정보 업데이트

        sql_query(" update {$g5['member_table']} set mb_level = '{$member['mb_level']}', as_msg = '0' where mb_id = '{$member['mb_id']}' ", false);

 

        // 회원자료 업데이트

        change_xp($member['mb_id'], $member['as_level']);

 

        echo "<script> alert('".$levelup_msg."');</script>";

    }

}

위 코드는 tail.php 부분인데..

단순하게 위 코드에서 ..

switch($member['as_msg']) { //Message  

~~~

case '4' : //등급다운 

            $mg = 'xp_grade'.$member['mb_level']; 

            $levelup_msg = aslang('alert', 'grade_down', array($xp[$mg], $member['mb_level'])); 

            break;

    }

switch 구문을 주석처리만 해줘도 되는 걸까요..?

현재 운영중인 사이트라 바로 적용할 수가 없어서요 ..

답변 2개 / 댓글 2개

채택된 답변
+20 포인트
2020-01-31 (금) 12:32:12

경고창이 안뜨기만 하면 되는거면 그부분하고 밑에 

Copy
echo "<script> alert('".$levelup_msg."');</script>";

이부분도 같이 주석 처리 해야 됩니다.

답변에 대한 댓글 1개

감사합니다 오류없이 제대로 처리되었습니다 !!
2020-01-31 (금) 12:29:43

레벨제를 운영하고 계시다면 삭제하지 않는게 좋을것 같습니다.

한곳만 바라보고 삭제를 했다가 다른곳에서도 문제가 생길 수 있을것같은데..

회원가입후에 뜨는 알럿창을 없애고 싶으시다면 차라리

    if($member['as_msg']) {
        // 회원정보 업데이트
        sql_query(" update {$g5['member_table']} set mb_level = '{$member['mb_level']}', as_msg = '0' where mb_id = '{$member['mb_id']}' ", false);
 
        // 회원자료 업데이트
        change_xp($member['mb_id'], $member['as_level']);
       if($member['as_level' != 1){
             echo "<script> alert('".$levelup_msg."');</script>";
       }
    }

이런식으로 레벨이 1일때는 알럿창이 안뜨도록 수정하는게 나을 것 같습니다.

답변에 대한 댓글 1개

레벨제를 운영하고 있지 않은데 알럿창이 보여지더라구요 ㅠㅠ 답변 감사합니다 !!

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