팁과노하우

  • 팁과노하우 포인트 정책
      글쓰기
      100P
      댓글
      10P
  • 전체 115건 / 1 페이지
    • 115
    • 2일 전
      2025.09.25
  • 2일 전
  • 그누보드(영카트) 5.6.23 팝빌알림톡제거 없데이트 관련 FTP상에서 파일제거 경로
  • 그누보드(영카트) 5.6.23 팝빌알림톡제거 없데이트 관련 FTP상에서 파일제거 경로
    안녕하세요?bank365 입니다.그누보드(영카트) 5.6.23에서 팝빌알림톡이 제거 가 되었는데요.깃허브를 보고, 삭제하기 햇갈려 하는 사람들을 위해직접 깃허브 삭제 내용을 들고 왔습니다.
    root = html / www 등의 최상위 경로를 의미합니다.
    root/adm/alimtalkpreset.phproot/adm/alimtalkpreset_popbill.phproot/adm/alimtalkpresetupdate.phproot/adm/img/svc_btn_07.jpgroot/adm/shop_admin/orderalimtalk.inc.php
    삭제root/extend/kakao5.extend.php

    삭제
    root/js/kakao5.js
    삭제
    root/plugin/kakao5 폴더전체
    삭제
    나머지 팝빌관련 파일들은 그누보드(영카트) 5.6.23 업데이트시삭제가 아닌 (핍빌과 관련된 소스)php 파일이 수정되었음을 알려드리며패치파일 덮어씌우기 혹은 전체 그누보드 파일 덮어씌우기등 편하신 방법대로 진행해 주심 되겠습니다.
    ==================================================================

    위 파일과 폴더등을 모두 삭제후,phpmyadmin(mysql) | mariadb 에 등록된 팝빌관련 DB테이블 삭제 하는 법
    https://sir.kr/g5_tip/24277[5.6.23 버전] 알림톡 DB 테이블 및 필드 제거 방법 > 그누보드5 팁자료실그누보드는 PHP, Python 언어로 만들어진 오픈소스 무료 게시판입니다. 그누보드, 무료게시판, 무료쇼핑몰, 영카트, 리액트 게시판, React 게시판, 컨텐츠몰, 제작의뢰, 전자결제, 결제대행사, Python, CMS, 파이썬 게시판, PHP 게시판, python 게시판, fastapi 게시판, [5.6.23 버전] 알림톡 DB 테이블 및 필드 제거 방법 > 그누보드5 팁자료실https://sir.kr/g5_tip/24277
    에서 uninstall_kakao5.php (8.8K) 2025-09-23 09:31:17 를 다운로드 받아
    root/adm 에 업로드후(관리자 아이디admin로  로그인후 진행해 주세요)https://도메인이름.도메인확장자/adm/uninstall_kakao5.php 를 실행해 주신후 화면에 보이는 설명대로 진행해 주시면 됩니다.(ex// https://storybank.me/adm/uninstall_kakao5.php)
    phpmyadmin(mysql) | mariadb 에 등록된 팝빌관련 DB테이블을 삭제 진행후root/adm/uninstall_kakao5.php 를 FTP 계정에서 삭제해 주시면 끝

    저처럼 찌꺼기 파일에 민감하신 분들을 위해 적어보았습니다감사합니당
    • 114
    • 19일 전
      2025.09.08
  • 19일 전
  • 그누보드 게시판에서 이모지 사용하는 방법
  • define('G5_DB_CHARSET', 'utf8');define('G5_DB_CHARSET', 'utf8mb4');

    의외로 모르시는 분들이 많은것 같아요.그누보드 설치 전 그누보드가 설치 되어있는 최상위 폴더에 있는 config.php 파일에서 utf8 -> utf8mb4 로 변경해주시면 됩니다.
    • 113
    • 25일 전
      2025.09.02
  • 25일 전
  • 내가 쓴 글이 아니라면 읽기 금지 설정
  • 안녕하세요...미니님a입니다. 게시판 리스트 내 글 읽기를 내가 쓴 글이 아니라면 읽지 못하게 해야 할 경우 사용할 수 있는 코드입니다. 사용하시는 스킨/view.skin.php 파일을 열어주세요적당한 위치에 if (!$is_admin && $view['mb_id'] !== $member['mb_id']) { alert('내가 쓴 게시글이 아닙니다.'); exit; }  넣어주시면 됩니다. 내가 쓴글만 읽을 수 있으며, 관리자는 그냥 통과 됩니다.고맙습니다.
    • 112
    • 오래 전
      2025.08.06
  • 오래 전
  • [리빌더 버그 수정] 보낸쪽지 확인 불가
  • 리빌더에서 보낸쪽지를 확인할 수 없는 버그가 있습니다.제 환경에서만 그런지는 모르겠으나, 리빌더 데모 사이트에서도 동일한 현상으로 보아 같은 버그인 듯 합니다.

    문제되는 파일 : bbs/memo_view.php
    문제가 발생하는 이유- 받고, 보낸 쪽지에 따른 분기문 바깥에서 아래의 쿼리로 모든 경우에서 받은사람의 아이디를 현재접속한 계정의 아이디로 검색합니다.- 이런 경우 받은쪽지를 볼 경우에는 당연히 접속한 계정의 id로 받은 쪽지를 검색하니, 문제가 발생되지 않습니다.- 다만, 보낸 쪽지의 경우 내가 나에게 보낸 쪽지가 아닌이상 받은사람은 다른 사람인데, 내 아이디를 검색하니 정상의 경우가 아닙니다.
    해결 방법
    1. 39번째 줄에 있는 아래 구문을 삭제하세요.$c = sql_fetch (" select COUNT(*) as cnt from {$g5['memo_table']} where me_id = '$me_id' and me_recv_mb_id = '{$member['mb_id']}' ");
    2. 37번째줄 $memo = sql_fetch($sql); 구문 아래에 다음 코드를 추가하세요.$qry = sql_query($sql);$memo_count = sql_num_rows($qry);
    3. 바로 다음의 if($c['cnt'] < 1) { 구문을 if($memo_count < 1) { 으로 변경해주세요.


    수정 된 코드<?phpinclude_once('./_common.php');
    if (!$is_member)    alert('회원만 이용하실 수 있습니다.');
    $me_id = isset($_REQUEST['me_id']) ? (int) $_REQUEST['me_id'] : 0;
    if ($kind == 'recv'){    $t = '받은';    $unkind = 'send';
        $sql = " update {$g5['memo_table']}                set me_read_datetime = '".G5_TIME_YMDHIS."'                where (me_id = '$me_id' or me_send_id = '$me_id' )                and me_recv_mb_id = '{$member['mb_id']}'                and me_read_datetime = '0000-00-00 00:00:00' ";    sql_query($sql);
        $sql = " update `{$g5['member_table']}` set mb_memo_cnt = '".get_memo_not_read($member['mb_id'])."' where mb_id = '{$member['mb_id']}' ";    sql_query($sql);}else if ($kind == 'send'){    $t = '보낸';    $unkind = 'recv';}else{    alert($kind.' 값을 넘겨주세요.');}
    $sql = " select * from {$g5['memo_table']}            where me_id = '$me_id'            and me_{$kind}_mb_id = '{$member['mb_id']}' ";$memo = sql_fetch($sql);$qry = sql_query($sql);$memo_count = sql_num_rows($qry);
    if($memo_count < 1) {    alert('삭제 되었거나 존재하지 않는 쪽지 입니다.');}
    • 111
    • 오래 전
      2025.07.29
  • 오래 전
  • 리스트에서 제목 OOO 표시 하기
  • 게시판 리스트에서 제목을 가리는 팁입니다.
    해당 게시판 list.skin.php 문서에서
    echo $list[$i]['subject'] 이부분을 찾아 아래와 같이 수정해주세요.echo 'OOO'.substr($list[$i]['wr_subject'], 3, strlen($list[$i]['wr_subject']) - 3);
    5개를 원하시면OOOOO 하시고 숫자 3을 5로 수정해 주시면 됩니다.
    • 110
    • 오래 전
      2025.07.25
  • 오래 전
  • php 8.2.28 회원 가입 시 나타나는 경고 수정
  • 안녕하세요...미니님a입니다.
    php8.2.28 버전에서 회원 가입 시 회원 가입 버튼이 경고 창에 의해 이상하게 출력 됩니다.테스트 버전은 최신 버전인 2.2.1.5 버전입니다.

    해당 php 버전에서 회원 가입 시도 시 아래 처럼 경고가 발생합니다.



    register_form.skin.php 파일 내 453번 라인 근처에 보면 아래 코드가 있습니다.
    <button type="submit" class="btn_submit font-B" accesskey="s"><?php if ($re == "re") { ?>전환가입<?php } else { ?><?php echo $w==''?'회원가입':'정보수정'; ?><?php } ?></button>
    해당 코드를 아래 코드로 변경 해주시면 오류는 사라집니다.
    <button type="submit" class="btn_submit font-B" accesskey="s"><?php if (isset($re) && $re == "re") { ?>전환가입<?php } else { ?><?php echo $w==''?'회원가입':'정보수정'; ?><?php } ?></button>





    ======================================================================

    추가) 25.07.25 10:47
    회원 가입 시 input hidden 값을 넘어가는 부분의 경고창도 확인하였습니다.


    같은 파일 50번 라인에서 수정 할 수 있습니다.
    [code]<input type="hidden" name="re" value="<?php echo $re ?>">[/code]
    위 코드를 아래 코드로 변경 해주세요
    [code]<input type="hidden" name="re" value="<?php echo isset($re) ? $re : ''; ?>">[/code]







    고맙습니다.
    • 1753407494_c0f41537fb5fdb2c_image.png
    • 109
    • 오래 전
      2025.07.22
  • 오래 전
  • 카테고리 일괄 변경
  • extend/user.config.php 파일에 아래 코드 추가

    sql_query(" update g5_write_free set ca_name = 변경 될 카테고리명 where ca_name = '기존 카테고리명' ");
    참고 : g5_write_free > free는 게시판명
    새로 고침하면 변경된거 확인 가능 하고변경 된것 확인 하시고 삭제 해주세요.
    • 108
    • 오래 전
      2025.07.17
  • 오래 전
  • 관리자 화면 내 구독 PHP8 오류 출력
  • 안녕하세요...미니님a입니다.
    구독 관리 메뉴 (관리자) 접근 시 PHP8 버전에는 경고가 발생합니다.

    혹시나 싶어서 리빌더 측 새로운 채신!!! 파일 다운로드 하여 업로드 해봤지만, 같은 경고창이 뜨는 것을 확인 하였습니다.
    경로는 스샷에 보는 것 처럼
    /adm/rb/subscribe_form.php  파일 152 번 라인 / 153번 라인입니다.
    <?php    for ($i=0; $rowss=sql_fetch_array($result_is); $i++) {        $mbx1 = get_member($rowss['sb_mb_id']);        $mbx2 = get_member($rowss['sb_fw_id']);        $name1 = get_text($mbx1['mb_nick']);        $name2 = get_text($mbx2['mb_nick']);                if($rowss['sb_push'] == 1) {            $sb_push = "알림수신";        } else {             $sb_push = "-";        }         $bg = 'bg'.($i%2);     ?>
    위 코드를 아래 코드로 변경 해주시면 경고는 사라지게 됩니다.
    <?php    for ($i=0; $rowss=sql_fetch_array($result_is); $i++) {        if (isset($rowss['sb_mb_id']) && $rowss['sb_mb_id']) {            $mbx1 = get_member($rowss['sb_mb_id']);            $name1 = isset($mbx1['mb_nick']) ? get_text($mbx1['mb_nick']) : '';        } else {            $name1 = '';        }         if (isset($rowss['sb_fw_id']) && $rowss['sb_fw_id']) {            $mbx2 = get_member($rowss['sb_fw_id']);            $name2 = isset($mbx2['mb_nick']) ? get_text($mbx2['mb_nick']) : '';        } else {            $name2 = '';        }         if(isset($rowss['sb_push']) && $rowss['sb_push'] == 1) {            $sb_push = "알림수신";        } else {             $sb_push = "-";        }         $bg = 'bg'.($i%2);     ?>

    고맙습니다.
    • 107
    • 오래 전
      2025.07.04
  • 오래 전
  • 리빌더 스크롤 개선 팁입니다. (모바일)
  • 리빌더로 제작된 사이트들을 보면 스크롤이 네이티브의 경험과 좀 다름을 느꼈습니다.그래서 수정점을 찾아 공유합니다.
    수정이 필요한 파일/theme/rb.basic/rb.css/mobile.css
    수정한 부분@media all and (max-width:1024px) 미디어 쿼리 최상단 html body 태그
    원본 코드html, body {overflow-x: hidden; background-color: #fff !important;}
    수정 코드html, body {overflow-x: hidden; background-color: #fff !important; height: auto;}
    --------
    결과 (비포 / 애프터)
    -before-


    -after-



    • Uploaded Image
    • 106
    • 오래 전
      2025.07.01
  • 오래 전
  • 내용관리 (일반페이지 생성) 에서 모듈출력 사용하기
  • 내용관리 생성 > php 파일내 div코딩 > 파일업로드 순으로 하시면 되겠습니다.
    리빌더 2.2.1.4 버전 부터 작동합니다.

    1. 관리자모드 > 게시판관리 > 내용관리 에서 페이지를 생성합니다. (id : about 이라고 가정)내용관리를 생성하실때 스킨을 (테마)rb.basic 을 지정해주세요.
    2. about.php 파일을 만든 후 모듈추가가 가능한 div를 코딩합니다.<div class="flex_box" data-layout="고유한이름"></div>
    3. /theme/rb.basic/rb.page/ 경로에 만드신 about.php 파일을 업로드합니다. (내용관리의 id와 파일이름을 동일하게)4. 도메인/bbs/content.php?co_id=about  으로 접속합니다. (짧은주소 사용시 : 도메인/content/about)5. 관리자 로그인 후 해당 페이지에서 모듈추가 버튼으로 모듈을 추가합니다.
    2 에서 <div class="flex_box" data-layout="고유한이름"></div> 를 여러개 만드신 후에CSS로 레이아웃을 잡아주셔도 됩니다.




    추가 팁으로,
    특정 div를 가로폭에 관계없이 100% 로 채우시려면
    아래 CSS를 활용하시면 되겠습니다.

    .test 을 100%로 만들기위해 아래 CSS 추가

    <style>
    .test{
        width: 100vw;
        position: relative;
        left: 50%;
        transform: translateX(-50%);
        min-width: 1280px;
    }

    @media all and (max-width:1024px) { /* 반응형 처리 */
        .test{width:100%; min-width: 100%; left:auto; transform:none;}
    }
    </style>

    min-width: 1280px; 은 사용하고계시는 가로폭으로 변경해주시면 되겠습니다.
    감사합니다.
    • Uploaded Image
    • 105
    • 오래 전
      2025.07.01
  • 오래 전
  • 익명 게시판 닉네임 500개 추가 하기
  • 안녕하세요...미니님a입니다.
    리빌더에서 제공하는 익명 게시판에 닉네임이 50개 가량 동물 이름으로 되어있습니다.여기에 명사까지 추가 하여 500개를 추가적으로 포함한 파일입니다.
    그냥 심심해서 만들어봤습니다.다운로드 받은 텍스트 파일을 익명 게시판 스킨 폴더에 넣어주시면 됩니다.
    • 104
    • 오래 전
      2025.06.24
  • 오래 전
  • 에디터 사용 했음에도 모바일에서는 에디터가 나오지 않을 때?
  • 안녕하세요...미니님a입니다.
    최근 작업 도중 반응형으로 웹 사이트를 구성했음에도 에디터가 나오지 않음을 확인하였습니다.
    당연히 PC에서는 잘 나오구요.설정은 아무리 찾아봐도 없더라구요..
    그래서 아 이런 경우 다른 분들도 힘들 수 있겠구나?라는 마음으로 팁으로 작성합니다.루트 폴더 내 config.php 파일을 열어 주세요
    그리고 컨트롤 + F 를 활용해 검색합니다.모바일 기기 검색 시
    218번 라인에 다음과 같은 코드가 있습니다.
    // 모바일 기기에서 DHTML 에디터 사용여부를 설정합니다. define('G5_IS_MOBILE_DHTML_USE', false);
    이 코드를 true 로 변경 해주세요// 모바일 기기에서 DHTML 에디터 사용여부를 설정합니다. define('G5_IS_MOBILE_DHTML_USE', true);
    그럼 정상적으로 반응형이더라도 모바일에서 에디터 사용할 수 있습니다.고맙습니다.
    • 103
    • 오래 전
      2025.06.24
  • 오래 전
  • 간단하지만, 특정 상황에서 에디터가 나오지 않을 때?
  • 안녕하세요...미니님a입니다.
    최근에 있었던 일인데, 누구는 에디터가 나오고 누구는 에디터가 나오지 않는 이상한 현상을 발견 했습니다.
    에디터 권한을 준 적도 없는데 말이죠...그래서 아..이런 것 놓칠 수 있겠다?싶어서 팁으로 작성합니다.
    게시판 관리 내 "HTML 쓰기 권한" 이 맞지 않으면, 에디터가 나오지 않습니다.

    그래서 회원의 경우 에디터를 쓸 수 있도록 2로 설정 해두셔야 할 것 같습니다예) 10으로 변경 시 레벨2는 에디터가 나오지 않음..
    고맙습니다.
    • 102
    • 오래 전
      2025.06.23
  • 오래 전
  • 게시글 끌어올리기를 소스로 직접 적용하기
  • 안녕하세요...미니님a입니다.
    https://rebuilder.co.kr/userdata/650게시글 끌어올리기 + 이력 + 설정 기능 추가 > 유저 자료실 | 그누보드 리빌더웹사이트 부터 쇼핑몰, 그리고 플랫폼 까지! 가볍게 만들고 묵직하게 확장하는 그누보드 리빌더https://rebuilder.co.kr/userdata/650
    스킨을 직접 사용하지 않고, 소스 코드만 적용하여 원하는 스킨에 적용할 수 있도록 분리된 팁입니다. 위 경로에서 다운로드 이후, theme 폴더를 제외한 bbs + extend + plugin 폴더는 그대로 올려주세요 
    theme 폴더는 게시판 스킨 폴더라 제외합니다. 
    이제 원하시는 스킨을 찾으신 다음 먼저 style.css 파일을 열어주세요그리고 원하는 곳 (저는 참고로 맨 하단에 배치 하였습니다.)
    /* 끌어올리기 내역 */ #bo_v_jump {margin:20px 0;background:#f8f8f8;padding:15px;border-radius:5px;border:1px solid #e1e1e1} #bo_v_jump h2 {margin-bottom:10px;font-size:1.2em;color:#333} #bo_v_jump ul {margin:0;padding:0;list-style:none} #bo_v_jump li {padding:8px 0;border-bottom:1px dotted #ddd;font-size:0.95em;color:#555} #bo_v_jump li:last-child {border-bottom:none} #bo_v_jump .jump_nick {color:#3a8afd;font-weight:bold} #bo_v_jump .jump_datetime {color:#666} #bo_v_jump .jump_point {color:#e8180c;margin-left:5px} /* 끌어올리기 내역 */

    추가 해주세요 > 스크린샷 참고 하세요

    자 다음 view.skin.php 파일을 열어주세요 18번 라인을 찾아주세요 거기 소스 라인에 적당한 위치에 끌어 올리기 소스를 추가 해주세요
    <?php $is_admin = isset($is_admin) ? $is_admin : false; $move_up_href = G5_BBS_URL.'/move_up.php?bo_table='.$bo_table.'&wr_id='.$view['wr_id']; if (($member['mb_id'] && $member['mb_id'] == $view['mb_id']) || $is_admin) {?> <a href="<?php echo $move_up_href ?>" class="fl_btns font-B" title="끌어올리기" onclick="return confirm('해당 게시글을 끌어올리시겠습니까?');"> <i class="fa fa-arrow-up fa-1.5x" aria-hidden="true"></i> <span class="tooltips">끌어올리기</span> </a> <?php } ?>

    헤갈린다 하시면 아래 스크린샷을 참조 해주세요

    리고 266번 라인 근처에 보면 다음과 같은 코드가 있습니다.
    <!-- } 추천 비추천 끝 -->

    여기에 아래 코드를 넣어주세요
    <?php // 설정 정보 가져오기 $sql = "SELECT jump_history_visible FROM {$g5['write_jump_setup']}"; $setup = sql_fetch($sql); // 히스토리 보여지기가 1인 경우에만 출력 if (isset($setup['jump_history_visible']) && $setup['jump_history_visible'] == 1) { // 끌어올리기 내역 확인 $sql = "SELECT * FROM {$g5['write_jump_table']} WHERE bo_table = '{$bo_table}' AND wr_id = '{$wr_id}' ORDER BY datetime DESC"; $jump_result = sql_query($sql); if (sql_num_rows($jump_result) > 0) { ?> <!-- 끌어올리기 내역 시작 { --> <section id="bo_v_jump"> <h2>끌어올리기 내역</h2> <ul> <?php while ($jump = sql_fetch_array($jump_result)) { $jump_datetime = date('Y-m-d H:i', strtotime($jump['datetime'])); ?> <li> <span class="jump_nick"><?php echo $jump['mb_nick']; ?></span>님이 <span class="jump_datetime"><?php echo $jump_datetime; ?></span>에 끌어올리기 하였습니다. <?php if ($jump['jump_point'] > 0) { ?> <span class="jump_point">(<?php echo number_format($jump['jump_point']); ?>포인트 사용)</span> <?php } ?> </li> <?php } ?> </ul> </section> <?php } } ?> <!-- } 끌어올리기 내역 끝 -->

    잘 모르겠다? 하시면 아래 스크린샷 참고 하시길 바랍니다.

    그리고 328번 라인 근처에 보시면 스크랩 버튼 코드를 찾습니다.
    <?php if ($scrap_href) { ?> <a href="<?php echo $scrap_href; ?>" class="fl_btns font-B" target="_blank" onclick="win_scrap(this.href); return false;">스크랩</a> <?php } ?

    해당 코드를 아래에 하단의 코드를 넣으시면 됩니다만, 위치는 원하는 곳에 넣으셔도 무방합니다.
    <?php // 끌어올리기 버튼: 본인 또는 관리자 $is_admin = isset($is_admin) ? $is_admin : false; if (($member['mb_id'] && $member['mb_id'] == $view['mb_id']) || $is_admin) { $move_up_href = G5_BBS_URL.'/move_up.php?bo_table='.$bo_table.'&wr_id='.$view['wr_id']; echo '<a href="'.$move_up_href.'" class="fl_btns font-B" title="끌어올리기" onclick="return confirm('해당 게시글을 끌어올리시겠습니까?');">끌어올리기</a>'; } ?>

    여기까지 입니다. 고맙습니다.
    • Uploaded Image
    • 101
    • 오래 전
      2025.06.22
  • 오래 전
  • Javascript 난독화 (코드를 보기 어렵게)
  • 제가 추천 드리는 자바스크립트 코드를 난독화 하는 사이트 입니다
    https://obfuscator.io/JavaScript Obfuscator ToolJavaScript Obfuscator is a free online tool that obfuscates your source code, preventing it from being stolen and used without permission.https://obfuscator.io/

    난독화 하실 자바스크립트 코드를 입력하시고 Obfuscate를 누르시면 자동으로 난독화된 코드가 나옵니다.
    (Reset options에서 난독화 레벨을 선택하여 보다 복잡하고 알기 어렵도록 난독화 하실 수 있습니다.)

    이후 난독화된코드를 복사하셔서 필요하신곳에 추가하시면 끝 입니다 !

    * 너무 높은 레벨로 난독화를 진행할 경우 서버환경에 따라 해독하지 못할 수 있습니다.

검색

게시물 검색