[이윰] 출석체크 점수 경험치로 부여하기

페이지 정보

yadolee 루루아빠 2,920 3 2 2019.08.11 19:01:02

평점

  • 평점 : 5점 (2명 참여)

본문

출석체크 점수 경험치로 부여하기
그누보드5/eyoom/user_program/page/attendance.php를 열어 // 기본 포인트를 검색하여 다음과 같이 수정한다.

수정 전

                // 기본 포인트
                $point = array();
                $point['default'] = attendance_point($attendance['point_default']);
                insert_point($member['mb_id'], $point['default'], "{$date_day} 출석체크", '@attendance', '@default', "{$date_day}");

                // 부지런상 포인트
                if($attendance['hard_use'] == 'y') {
                    if($atd_count%$attendance['hard_cond']==0) {
                        $point['hard'] = attendance_point($attendance['hard_point']);
                        insert_point($member['mb_id'], $point['hard'], "{$date_day} 출석체크 부지런상", '@attendance', '@hard', "{$date_day}");
                    }
                }

                // 선착순상 포인트
                if($attendance['group_use'] == 'y' && $ranking == $attendance['group_cond'] && $attendance['group_cond'] > 1) {
                    $point['group'] = attendance_point($attendance['group_point']);

                    // 출석부에 포인트 등록
                    sql_query("update {$g5['eyoom_attendance']} set group_point='{$point['group']}' where ranking<'{$ranking}' and group_point=0 and atd_datetime like '".$date_day."%' ",false);
                    $res = sql_query("select atd_mb_id from {$g5['eyoom_attendance']} where ranking<'{$ranking}' and atd_datetime like '".$date_day."%'",false);
                    for($i=0;$row=sql_fetch_array($res);$i++) {
                        insert_point($row['atd_mb_id'], $point['group'], "{$date_day} 출석체크 선착순상", '@attendance', '@group', "{$date_day}");
                    }
                    insert_point($member['mb_id'], $point['group'], "{$date_day} 출석체크 선착순상", '@attendance', '@group', "{$date_day}");
                }

                // 어머나상 포인트
                if($attendance['lucky_use'] == 'y') {
                    $random = $eb->random_num(9);
                    if($random%10 == 0) {
                        $point['lucky'] = attendance_point($attendance['lucky_point']);
                        insert_point($member['mb_id'], $point['lucky'], "{$date_day} 출석체크 어머나상", '@attendance', '@lucky', "{$date_day}");
                    }
                }

                // 어느날상 포인트
                if($attendance['someday_use'] == 'y' && $attendance['someday_date'] == $today) {
                    $point['someday'] = attendance_point($attendance['someday_point']);
                    insert_point($member['mb_id'], $point['someday'], "{$date_day} 출석체크 어느날상", '@attendance', '@someday', "{$date_day}");
                }

                // 랭킹상 포인트
                if($attendance['ranking_use'] && $ranking <= $attendance['ranking_use'] && $ranking<=10) {
                    $rkey = 'ranking'.$ranking.'_point';
                    $point['ranking'] = $attendance[$rkey];
                    insert_point($member['mb_id'], $point['ranking'], "{$date_day} 출석체크 {$ranking}위 랭킹상", '@attendance', '@ranking', "{$date_day}");
                }
수정 후

                // 기본 포인트
                $point = array();
                $point['default'] = attendance_point($attendance['point_default']);
                //insert_point($member['mb_id'], $point['default'], "{$date_day} 출석체크", '@attendance', '@default', "{$date_day}");
                $eb->level_point($point['default']);    //추가, 경험치 적립

                // 부지런상 포인트
                if($attendance['hard_use'] == 'y') {
                    if($atd_count%$attendance['hard_cond']==0) {
                        $point['hard'] = attendance_point($attendance['hard_point']);
                        //insert_point($member['mb_id'], $point['hard'], "{$date_day} 출석체크 부지런상", '@attendance', '@hard', "{$date_day}");
                        $eb->level_point($point['default']+$point['hard']);    //추가, 경험치 적립
                    }
                }

                // 선착순상 포인트
                if($attendance['group_use'] == 'y' && $ranking == $attendance['group_cond'] && $attendance['group_cond'] > 1) {
                    $point['group'] = attendance_point($attendance['group_point']);

                    // 출석부에 포인트 등록
                    sql_query("update {$g5['eyoom_attendance']} set group_point='{$point['group']}' where ranking<'{$ranking}' and group_point=0 and atd_datetime like '".$date_day."%' ",false);
                    $res = sql_query("select atd_mb_id from {$g5['eyoom_attendance']} where ranking<'{$ranking}' and atd_datetime like '".$date_day."%'",false);
                    for($i=0;$row=sql_fetch_array($res);$i++) {
                        //insert_point($row['atd_mb_id'], $point['group'], "{$date_day} 출석체크 선착순상", '@attendance', '@group', "{$date_day}");
                        $eb->level_point($point['default']+$point['hard'],$row['atd_mb_id'],$point['group']);    //추가, 경험치 적립
                    }
                    //insert_point($member['mb_id'], $point['group'], "{$date_day} 출석체크 선착순상", '@attendance', '@group', "{$date_day}");
                    $eb->level_point($point['default']+$point['group']+$point['hard']);    //추가, 경험치 적립
                }

                // 어머나상 포인트
                if($attendance['lucky_use'] == 'y') {
                    $random = $eb->random_num(9);
                    if($random%10 == 0) {
                        $point['lucky'] = attendance_point($attendance['lucky_point']);
                        //insert_point($member['mb_id'], $point['lucky'], "{$date_day} 출석체크 어머나상", '@attendance', '@lucky', "{$date_day}");
                        $eb->level_point($point['default']+$point['lucky']+$point['hard']+$point['group']);    //추가, 경험치 적립
                    }
                }

                // 랭킹상 포인트
                if($attendance['ranking_use'] && $ranking <= $attendance['ranking_use'] && $ranking<=10) {
                    $rkey = 'ranking'.$ranking.'_point';
                    $point['ranking'] = $attendance[$rkey];
                    //insert_point($member['mb_id'], $point['ranking'], "{$date_day} 출석체크 {$ranking}위 랭킹상", '@attendance', '@ranking', "{$date_day}");
                    $eb->level_point($point['default']+$point['ranking']+$point['hard']+$point['group']+$point['lucky']);    //추가, 경험치 적립
                }

                // 어느날상 포인트
                if($attendance['someday_use'] == 'y' && $attendance['someday_date'] == $today) {
                    $point['someday'] = attendance_point($attendance['someday_point']);
                    //insert_point($member['mb_id'], $point['someday'], "{$date_day} 출석체크 어느날상", '@attendance', '@someday', "{$date_day}");
                    $eb->level_point($point['default']+$point['someday']+$point['hard']+$point['group']+$point['lucky']+$point['ranking']);    //추가, 경험치 적립
                }
수정 전 소스에서 어느날 상의 소스 위치가 변경되었는데 이건 빈도에 따른 수정이니 참고해서 수정하거나 그대로 덮어 써도 상관없다.
그누보드 포인트도 부여하고 싶다면 insert_point 주석을 해제하면 된다.
수정된 소스를 살펴보면 아래로 갈수록 경험치 점수 부여용 변수가 하나씩 더 추가되 더해짐을 알 수 있다.
추천인 2
  • 012i1052u
    내사랑
  • skyfield4u
    하늘구장
yadolee
6
루루아빠 - 회원등급 : 최고관리자 - 포인트 : 1,334,277
레벨 100
경험치 1,491,499

Progress Bar 21.67%

- 가입일 : 2015-03-04 03:24:54
- 서명 : KNOW YOUR LIMITS BUT NEVER STOP TRYING TO EXCEED THEM !!
- 자기소개 : 루루의 자랑 루루아빠랍니다~~

댓글3

내사랑님의 댓글

012i1052u
내사랑 2019.08.12 22:32
잘 되네요 다시 한번 감사의 인사 그리고 추천

내사랑님의 댓글

012i1052u
내사랑 2019.08.12 00:10
약속도 잘 지켜 주시는 영자님 땡큐에요

하늘구장님의 댓글

skyfield4u
하늘구장 2019.08.11 22:08
앗 감사합니다 잘 사용하겠습니다

축하합니다. 첫 댓글로 9경험치를 획득하였습니다.

Total 762726 페이지

제목 글쓴이 날짜 조회 추천
그누•영카트  🏆 영카트 5.4.1.8 shadow2fox 2020.02.05 2,158 2
그누•영카트  🏆 영카트 5.3.2.7 shadow2fox 2019.03.05 2,171 0
그누•영카트  🏆 특정 게시판에선 인기검색어 수집하지 않기 루루아빠 2018.06.08 2,179 0
그누•영카트  🏆 그누보드 5.3.1.5 패치 shadow2fox 2018.07.04 2,182 0
그누•영카트  🏆 그누보드 5.3.1.8 패치 shadow2fox 2018.10.15 2,182 0
그누•영카트  댓글+2🏆 그누보드 5.4.4.1 shadow2fox 2021.01.05 2,182 2
이윰  🏆 이윰빌더 최신글 본문 추출시 엔터, 띄어쓰기 태그를 스페이스(한 칸 띄우기)로 바꾸기 shadow2fox 2018.07.12 2,184 0
그누•영카트  🏆 그누보드 5.3.2.4 shadow2fox 2019.01.08 2,185 0
그누•영카트  🏆 그누보드 5.3.2.3 shadow2fox 2018.12.28 2,186 0
이윰  댓글+2🏆 본문 내 첨부된 이미지와 에디터로 업로드한 이미지 갯수 구하기 shadow2fox 2019.05.12 2,186 1
그누•영카트  🏆 그누보드 5.3.2.5 shadow2fox 2019.01.29 2,193 0
그누•영카트  🏆 그누보드 5.3.3.1 shadow2fox 2019.07.16 2,199 0
그누•영카트  댓글+2🏆 그누보드 5.4.4.7 shadow2fox 2021.01.14 2,199 2
그누•영카트  🏆 영카트 5.3.2.0 패치 shadow2fox 2018.11.22 2,201 0
그누•영카트  🏆 영카트 5.3.3.3 shadow2fox 2019.09.17 2,205 0
이윰  🏆 최신 브라우저에서 푸시 사운드 문제 해결하기 shadow2fox 2018.07.20 2,210 0
JavaScript  🏆 사용자의 브라우저를 검출하는 방법 shadow2fox 2018.08.22 2,214 0
그누•영카트  🏆 게시글 제목이나 본문에 적용되는 단어 필터링 관리자는 제외하기 shadow2fox 2018.07.30 2,219 0
그누•영카트  🏆 영카트 5.3.1.9 패치 shadow2fox 2018.10.19 2,231 0
이윰  🏆 Eyoom Builder 3.0.2 패치 루루아빠 2018.05.14 2,240 0
그누•영카트  🏆 게시판 관리자는 글쓰기, HTML, DHTML 제한 적용받지 않기 shadow2fox 2018.06.09 2,241 0
그누•영카트  🏆 영카트 5.4.1.9 shadow2fox 2020.02.08 2,243 0
그누•영카트  🏆 그누보드 5.3.1.2 패치 루루아빠 2018.04.21 2,249 0
그누•영카트  댓글+2🏆 그누보드 5.4.4.3 shadow2fox 2021.01.06 2,250 2
그누•영카트  🏆 영카트 5.3.2.8.1 shadow2fox 2019.04.23 2,252 0
이윰  🏆 태그(tag) 인덱스에서 새로운 글에 new 표시하기 shadow2fox 2018.08.26 2,254 0
그누•영카트  🏆 영카트 5.4.2.2 shadow2fox 2020.03.04 2,261 0
그누•영카트  🏆 영카트 5.3.3.3.1 shadow2fox 2019.10.05 2,264 0
그누•영카트  🏆 그누보드 5.3.2.6 shadow2fox 2019.02.15 2,267 0
그누•영카트  🏆 그누보드 5.4.1.1 shadow2fox 2019.12.03 2,268 0