코딩게시판

? ? ? ? 이미지 적용을 위한 기존 sql db data utf8mb4_unicode_ci 로 변경 작업

작성자 정보

  • 최고관리자 작성
  • 192.♡.0.1 아이피
  • 작성일

컨텐츠 정보


  • 링크

  • 첨부


  • 본문

    기본 utf8mb4_unicode_ci   로 db 생성후

    게시판 생성시 아래와 같이 변경 합니다

    1. define('G5_MYSQL_SET_MODE', true);

    • 이 상수는 그누보드의 DB 연결 모드 설정에 사용됩니다.

    • true로 설정하면 mysqli 연결 시 문자셋을 강제로 설정하거나, SQL 모드 관련 처리를 활성화할 수 있습니다.

    • 일반적으로 dbconfig.php에서 DB 초기 연결 직전에 선언합니다.

    • 예:

    define('G5_MYSQL_SET_MODE', true);

    → 연결 시 SET NAMES 또는 SET sql_mode 처리를 자동으로 수행하도록 그누보드 내부에서 처리합니다.


    2. define('G5_MYSQL_SET_NAMES', true);

    • 이 상수는 DB 연결 후 SET NAMES utf8mb4를 자동으로 실행하게 합니다.

    • 문자셋 utf8mb4를 지정하면 이모지, 특수문자, 다국어 등 모든 문자가 정상 저장됩니다.

    • 예:

    define('G5_MYSQL_SET_NAMES', true);

    → mysqli 연결 직후 내부적으로 다음과 같이 실행됩니다.

    if(defined('G5_MYSQL_SET_NAMES') && G5_MYSQL_SET_NAMES) { $mysqli->set_charset('utf8mb4'); }

    3. 위치

    • 두 상수 모두 dbconfig.php 파일 상단, $g5 DB 정보 선언 위쪽에 추가합니다.

    • 예시 (dbconfig.php):

    <?php define('G5_MYSQL_SET_MODE', true); define('G5_MYSQL_SET_NAMES', true); $g5['db_host'] = 'localhost'; $g5['db_user'] = 'username'; $g5['db_pass'] = 'password'; $g5['db_name'] = 'database';

    W:\g5\adm\sql_write.sql


    -- -- ===========================================================
    -- -- 원본: sql_write.sql (utf8 / MyISAM)
    -- -- ===========================================================
    -- CREATE TABLE `__TABLE_NAME__` (
    --   `wr_id` int(11) NOT NULL AUTO_INCREMENT,
    --   `wr_num` int(11) NOT NULL DEFAULT '0',
    --   `wr_reply` varchar(10) NOT NULL,
    --   `wr_parent` int(11) NOT NULL DEFAULT '0',
    --   `wr_is_comment` tinyint(4) NOT NULL DEFAULT '0',
    --   `wr_comment` int(11) NOT NULL DEFAULT '0',
    --   `wr_comment_reply` varchar(5) NOT NULL,
    --   `ca_name` varchar(255) NOT NULL,
    --   `wr_option` set('html1','html2','secret','mail') NOT NULL,
    --   `wr_subject` varchar(255) NOT NULL,
    --   `wr_content` text NOT NULL,
    --   `wr_seo_title` varchar(255) NOT NULL DEFAULT '',
    --   `wr_link1` text NOT NULL,
    --   `wr_link2` text NOT NULL,
    --   `wr_link1_hit` int(11) NOT NULL DEFAULT '0',
    --   `wr_link2_hit` int(11) NOT NULL DEFAULT '0',
    --   `wr_hit` int(11) NOT NULL DEFAULT '0',
    --   `wr_good` int(11) NOT NULL DEFAULT '0',
    --   `wr_nogood` int(11) NOT NULL DEFAULT '0',
    --   `mb_id` varchar(20) NOT NULL,
    --   `wr_password` varchar(255) NOT NULL,
    --   `wr_name` varchar(255) NOT NULL,
    --   `wr_email` varchar(255) NOT NULL,
    --   `wr_homepage` varchar(255) NOT NULL,
    --   `wr_datetime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
    --   `wr_file` tinyint(4) NOT NULL DEFAULT '0',
    --   `wr_last` varchar(19) NOT NULL,
    --   `wr_ip` varchar(255) NOT NULL,
    --   `wr_facebook_user` varchar(255) NOT NULL,
    --   `wr_twitter_user` varchar(255) NOT NULL,
    --   `wr_1` varchar(255) NOT NULL,
    --   `wr_2` varchar(255) NOT NULL,
    --   `wr_3` varchar(255) NOT NULL,
    --   `wr_4` varchar(255) NOT NULL,
    --   `wr_5` varchar(255) NOT NULL,
    --   `wr_6` varchar(255) NOT NULL,
    --   `wr_7` varchar(255) NOT NULL,
    --   `wr_8` varchar(255) NOT NULL,
    --   `wr_9` varchar(255) NOT NULL,
    --   `wr_10` varchar(255) NOT NULL,
    --   PRIMARY KEY (`wr_id`),
    --   KEY `wr_seo_title` (`wr_seo_title`),
    --   KEY `wr_num_reply_parent` (`wr_num`,`wr_reply`,`wr_parent`),
    --   KEY `wr_is_comment` (`wr_is_comment`,`wr_id`)
    -- ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

    -- ===========================================================
    -- 변경: utf8mb4 / InnoDB / 필드별 utf8mb4_unicode_ci 적용
    -- ===========================================================
    CREATE TABLE `__TABLE_NAME__` (
      `wr_id` int(11) NOT NULL AUTO_INCREMENT,
      `wr_num` int(11) NOT NULL DEFAULT '0',
      `wr_reply` varchar(10) NOT NULL,
      `wr_parent` int(11) NOT NULL DEFAULT '0',
      `wr_is_comment` tinyint(4) NOT NULL DEFAULT '0',
      `wr_comment` int(11) NOT NULL DEFAULT '0',
      `wr_comment_reply` varchar(5) NOT NULL,
      `ca_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_option` set('html1','html2','secret','mail') CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_subject` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_seo_title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
      `wr_link1` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_link2` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_link1_hit` int(11) NOT NULL DEFAULT '0',
      `wr_link2_hit` int(11) NOT NULL DEFAULT '0',
      `wr_hit` int(11) NOT NULL DEFAULT '0',
      `wr_good` int(11) NOT NULL DEFAULT '0',
      `wr_nogood` int(11) NOT NULL DEFAULT '0',
      `mb_id` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_email` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_homepage` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_datetime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
      `wr_file` tinyint(4) NOT NULL DEFAULT '0',
      `wr_last` varchar(19) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_ip` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_facebook_user` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_twitter_user` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_1` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_2` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_3` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_4` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_5` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_6` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_7` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_8` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_9` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      `wr_10` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
      PRIMARY KEY (`wr_id`),
      KEY `wr_seo_title` (`wr_seo_title`),
      KEY `wr_num_reply_parent` (`wr_num`,`wr_reply`,`wr_parent`),
      KEY `wr_is_comment` (`wr_is_comment`,`wr_id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
    ==================
    3232235521_1762645322.9037.png

    첨부 파일을 스킨보드에 구성 PDF보기( W:\g5\skin\board\BS4-Basic-Webzine_11q_pdf_php82\view.skin.php + view_pdf.php구성)



    관련자료

    댓글 0
    등록된 댓글이 없습니다.

    최근글


    새댓글