테스트 사이트 - 개발 중인 베타 버전입니다

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

광깔 5년 전 조회 6,023

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

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

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

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

 

</p>

<p><?php</p>

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

<p> </p>

<p>//Level Up</p>

<p>if($member['mb_id']) { </p>

<p>    //Auto Grade</p>

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

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

<p>            $level = $member['mb_level'];</p>

<p>            $n = 1;</p>

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

<p>                $g = 'xp_auto'.$n;</p>

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

<p>                    $level = $i;</p>

<p>                    break;</p>

<p>                }</p>

<p>                $n++;</p>

<p>            }</p>

<p> </p>

<p>            if($level == $member['mb_level']) {</p>

<p>                ;</p>

<p>            } else {</p>

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

<p>                $member['mb_level'] = $level;</p>

<p>            }</p>

<p>        }</p>

<p>    }</p>

<p> </p>

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

<p>        case '1' : //레벨업</p>

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

<p>            break;</p>

<p>        case '2' : //레벨다운</p>

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

<p>            break;</p>

<p>        case '3' : //등업</p>

<p>            $mg = 'xp_grade'.$member['mb_level']; </p>

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

<p>            break;</p>

<p>        case '4' : //등급다운   </p>

<p>            $mg = 'xp_grade'.$member['mb_level']; </p>

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

<p>            break;</p>

<p>    }</p>

<p> </p>

<p>    if($member['as_msg']) {</p>

<p>        // 회원정보 업데이트</p>

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

<p> </p>

<p>        // 회원자료 업데이트</p>

<p>        change_xp($member['mb_id'], $member['as_level']);</p>

<p> </p>

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

<p>    }</p>

<p>}</p>

<p>

 

위 코드는 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개

채택된 답변
+20 포인트
5년 전

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

 

</p>

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

<p><code>

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

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

광깔
5년 전
감사합니다 오류없이 제대로 처리되었습니다 !!

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

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

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

 

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

 

    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개

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

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

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

로그인