회원가입 경로 및 통계 (2022-12-14 11:27) V9 > 그누보드5 플러그인

그누보드5 플러그인

그누보드는 다양한 기능을 추가하기 쉽습니다.

회원가입 경로 및 통계 (2022-12-14 11:27) V9 정보

회원가입 경로 및 통계 (2022-12-14 11:27) V9

첨부파일

g5_member_funnels_free_2022_1205_1253_v9.zip (10.5K) 52회 다운로드 2022-12-05 12:59:17
테스트한 버전5.4.18
호환 가능 버전5.0 이상

본문

 

[주] 이후 강좌수정내용의 업데이트가 안될수 있습니다.

본 강좌의 최신업데이트는 https://www.happyjung.com/lecture/2966 에서 확인가능합니다.

가급적 동일한 내용을 유지하려고 노력하지만, 우선 작업은 위 링크입니다.

 

 

회원가입시 가입경로 추가 하는 방법입니다

이 프로그램에서 사용하는 필드는 회원 g5_member 에 mb_funnels 필드를 생성하고 그곳에 가입경로를 저장합니다
그리고 그 값을 이용해서 다양한 통계 ( 일별, 주별, 월별, 년별 )를 활용할 수 있습니다


본 강좌는 일부 기능이 제한됩니다
1. 가입경로 관리
2. 일별 가입통계 : 프리미엄(유료)
3. 요일별 가입통계 : 프리미엄(유료)
3. 월별 가입통계 : 프리미엄(유료)
4. 년별 가입통계

5. 이윰빌더 전용 스킨 : 프리미엄(유료)



프리미엄(유료) 구입 : https://sir.kr/cmall/1638340546

 



<<< 설치방법 >>>

1. / adm / admin.menu200.php
    array('200100', '회원관리', G5_ADMIN_URL.'/member_list.php', 'mb_list'),
를 아래와 같이 수정
    array('200100', '회원관리', G5_ADMIN_URL.'/member_list.php', 'mb_list'),
    array('200105', '가입경로', G5_ADMIN_URL.'/member_funnels.php', 'mb_funnels'),


2. / adm / *
첨부파일  g5_member_funnels_***.zip 파일들 업로드


adm
  ├ eyoom_admin  <= 2022-12-17 추가 (프리미엄 버전)
  │    ├ core
  │    │    └ member
  │    │          ├ member_funnels_date.php
  │    │          ├ member_funnels_list.php
  │    │          ├ member_funnels_month.php
  │    │          ├ member_funnels_week.php
  │    │          ├ member_funnels_write.php
  │    │          ├ member_funnels_year.php
  │    │          ├ member_funnels.php
  │    │          └ member_funnels_sub.php
  │    └ theme
  │           └ basic
  │                 └ skin
  │                       └ member
  │                              ├ member_funnels_date.html.php
  │                              ├ member_funnels_list.html.php
  │                              ├ member_funnels_month.html.php
  │                              ├ member_funnels_week.html.php
  │                              ├ member_funnels_write.html.php
  │                              ├ member_funnels_year.html.php
  │                              ├ member_funnels.html.php
  │                              └ member_funnels_sub.html.php
  ├ member_funnels.php
  ├ member_funnels.sub.php
  ├ member_funnels_config.php  <= 2022-12-04 추가
  ├ member_funnels_date.php
  ├ member_funnels_list.php
  ├ member_funnels_month.php
  ├ member_funnels_update.php
  ├ member_funnels_week.php
  ├ member_funnels_write.php
  └ member_funnels_year.php


3-1. / skin / member / basic / register_form.skin.php  적당한 위치에
            <li>
                <label for="reg_mb_funnels" class="sound_only">가입경로</label>
                <?php if ($w=='')  { ?>
                    <select name="mb_funnels" required>
                        <?php
                        $sql_funnels = " select * from `{$g5['member_table']}_funnels` where funnels_used='y' order by funnels_sort asc ";
                        $qry_funnels = sql_query($sql_funnels);
                        echo '<option value="">선택하세요</option>';
                        for ($i_funnels=1; $row_funnels=sql_fetch_array($qry_funnels); $i_funnels++) {
                            echo "<option value=\"{$row_funnels['funnels_num']}";
                            if ($row_funnels['funnels_num']==$member['mb_funnels']) { echo " selected"; }
                            echo "\">{$row_funnels['funnels_title']}</option>";
                        }
                        ?>
                    </select>
                <?php } else { ?>
                    <input type="hidden" name="mb_funnels" value="<?php echo $member['mb_funnels']; ?>">
                    <?php
                    $sql_funnels = " select * from `{$g5['member_table']}_funnels` where funnels_num='{$member['mb_funnels']}'";
                    $row_funnels = sql_fetch_array(sql_query($sql_funnels));
                    echo $row_funnels['funnels_title'];
                    ?>
                <?php } ?>
            </li>


3-2. / skin / member / basic / register_form.skin.php  하단 javascript 적당한 위치에
        fieldlist = [["mb_funnels","가입경로"]];
        for (i=0; i < fieldlist.length; i++) {
            if (eval("f." + fieldlist[i][0] + ".value") == "") {
                alert(fieldlist[i][1] + "을 선택해주세요.");
                eval("f." + fieldlist[i][0]).focus();
                return false;
            }
        }

위 내용은 초기에는 사용되었었지만, 버전업후 사용이 중지된 내용으로
기존 적용된 분을 위해 삭제하지 않고 설명에 유지하고 있는 중입니다


4-1. / mobile / skin / member / basic / register_form.skin.php  적당한 위치에
            <li>
                <label for="reg_mb_funnels" class="sound_only">가입경로</label>
                <?php
                $sql_funnels = " select * from `{$g5['member_table']}_funnels` where funnels_used='y' order by funnels_sort asc ";
                $qry_funnels = sql_query($sql_funnels);
                ?>
                <select name="mb_funnels" required>
                    <option value="">선택하세요</option>
                    <?php for ($i_funnels=1; $row_funnels=sql_fetch_array($qry_funnels); $i_funnels++) { ?>
                    <option value="<?php echo $row_funnels['funnels_num']; ?>"<?php if ($row_funnels['funnels_num']==$member['mb_funnels']) { echo " selected"; } ?>><?php echo $row_funnels['funnels_title']; ?></option>
                    <?php } ?>
                </select>
            </li>


4-2. / mobile / skin / member / basic / register_form.skin.php  하단 javascript 적당한 위치에
        fieldlist = [["mb_funnels","가입경로"]];
        for (i=0; i < fieldlist.length; i++) {
            if (eval("f." + fieldlist[i][0] + ".value") == "") {
                alert(fieldlist[i][1] + "을 선택해주세요.");
                eval("f." + fieldlist[i][0]).focus();
                return false;
            }
        }

위 내용은 초기에는 사용되었었지만, 버전업후 사용이 중지된 내용으로
기존 적용된 분을 위해 삭제하지 않고 설명에 유지하고 있는 중입니다


5. / bbs / register_form_update.php
                     mb_open_date = '".G5_TIME_YMD."',

를 아래와 같이 변경

                     mb_funnels = '{$_POST['mb_funnels']}',
                     mb_open_date = '".G5_TIME_YMD."',


6. / skin / social / social_register_member.skin.php   (2022-12-14 추가)
                    <li>
                        <label for="reg_mb_funnels">가입경로 (필수)</label>
                        <?php if ($w=='')  { ?>
                            <select name="mb_funnels" required>
                                <?php
                                $sql_funnels = " select * from `{$g5['member_table']}_funnels` where funnels_used='y' order by funnels_sort asc ";
                                $qry_funnels = sql_query($sql_funnels);
                                echo '<option value="">선택하세요</option>';
                                for ($i_funnels=1; $row_funnels=sql_fetch_array($qry_funnels); $i_funnels++) {
                                    echo "<option value=\"{$row_funnels['funnels_num']}";
                                    if ($row_funnels['funnels_num']==$member['mb_funnels']) { echo " selected"; }
                                    echo "\">{$row_funnels['funnels_title']}</option>";
                                }
                                ?>
                            </select>
                        <?php } else { ?>
                            <input type="hidden" name="mb_funnels" value="<?php echo $member['mb_funnels']; ?>">
                            <?php
                            $sql_funnels = " select * from `{$g5['member_table']}_funnels` where funnels_num='{$member['mb_funnels']}'";
                            $row_funnels = sql_fetch_array(sql_query($sql_funnels));
                            echo $row_funnels['funnels_title'];
                            ?>
                        <?php } ?>
                    </li>


7. / mobile / skin / social / social_register_member.skin.php   (2022-12-14 추가)
                <li>
                    <label for="reg_mb_funnels">가입경로 (필수)</label>
                    <?php
                    $sql_funnels = " select * from `{$g5['member_table']}_funnels` where funnels_used='y' order by funnels_sort asc ";
                    $qry_funnels = sql_query($sql_funnels);
                    ?>
                    <select name="mb_funnels" required>
                        <option value="">선택하세요</option>
                        <?php for ($i_funnels=1; $row_funnels=sql_fetch_array($qry_funnels); $i_funnels++) { ?>
                        <option value="<?php echo $row_funnels['funnels_num']; ?>"<?php if ($row_funnels['funnels_num']==$member['mb_funnels']) { echo " selected"; } ?>><?php echo $row_funnels['funnels_title']; ?></option>
                        <?php } ?>
                    </select>
                </li>

8. / plugin / social / register_member_update.php
                mb_open_date = '".G5_TIME_YMD."'

를 아래와 같이 변경

                mb_funnels = '{$_POST['mb_funnels']}',
                mb_open_date = '".G5_TIME_YMD."'

 


<<< 변경이력 >>>

2022-12-17 09:33  V10 : 프리미엄(유료) 전용
  . 이윰빌더에 최적화된 core와 theme 를 추가
 

2022-12-14 11:27
  . 소셜가입경로에 설명 추가 ( 아래 제품 설명중 6과 7)


2022-12-05 12:53  V9
  . 가입경로 저장 테이블 생성 오류가 확인되어 수정

  . 잘못 생성된 가입경로 테이블 삭제하고 다시 생성되도록 수정
  . 8. / plugin / social / register_member_update.php 설명 수정


2022-12-05 10:03  V8
  . 환경설정 디비 테이블 생성에서 중복 오류 수정

2022-12-04 18:27  V7
  . 디비 테이블 이름 등 전체적으로 수정했습니다

2022-12-04 15:30  V6
  . 환경설정의 테이블 생성할때 테이블명의 오류를 수정했습니다

  . 스킨 적용설명에서 $i 를 $i_funnels 로 변경했습니다 (스킨에서 $i 가 사용된경우 충돌 방지를 위해서)

2022-12-04 15:15  V5
  . member_funnels_config.php 파일 추가 (버전관리)
  . sum 함수에서 0 이 된 경우 나누기 오류가 발생하지 않도록 수정
 

2021-12-01 15:15  V4
  . 유료 판매 개시 ( https://sir.kr/cmall/1638340546 )
 

2020-11-27 01:42  V3 


2020-12-08 19:43  V2


2020-12-07 15:15  V1
  . 무료버전 최초 공개 ( https://sir.kr/g5_plugin/9651 )

추천
6

댓글 전체

ALTER TABLE `g5_member_funnels` ADD PRIMARY KEY (`funnels_idx`), ADD KEY `funnels_num` (`funnels_num`);

1068 : Multiple primary key defined

error file : /adm/member_funnels.php

수정 해야겠군요..
에러가 꽤 있네요..
Warning: Division by zero in /host/home1/nulook/html/adm/member_funnels.php on line 131


Warning: count(): Parameter must be an array or an object that implements Countable in /host/home1/nulook/html/adm/member_funnels_year.php on line 59

그리고 경로추가할 때 처음 한 개는 들어가던데 그 다음부터는 먹통입니다 ㅠ
2021-12-01 15:15  V5
  . member_funnels_config.php 파일 추가 (버전관리)
  . sum 함수에서 0 이 된 경우 나누기 오류가 발생하지 않도록 수정 했습니다
전체 504
그누보드5 플러그인 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT