개발하는 '정'/PHP
[그누보드] 이모지 입력
주앤정_블로그
2022. 9. 5. 10:35
작업 전에 아래 글에서 DB 설정을 완료해야한다.
https://zpxlcm.tistory.com/entry/MYSQL-이모지-입력하기-윈도우-이모디콘-입력하기-phpMyAdmin
간단히 정리하자면 소스 상의 utf8을 utf8mb4로 변경하는 작업이다.
(그누보드 버전 : 5.3.2.8)
1. /common.php
if (file_exists($dbconfig_file)) {
include_once($dbconfig_file);
include_once(G5_LIB_PATH.'/common.lib.php'); // 공통 라이브러리
$connect_db = sql_connect(G5_MYSQL_HOST, G5_MYSQL_USER, G5_MYSQL_PASSWORD) or die('MySQL Connect Error!!!');
$select_db = sql_select_db(G5_MYSQL_DB, $connect_db) or die('MySQL DB Error!!!');
// mysql connect resource $g5 배열에 저장 - 명랑폐인님 제안
$g5['connect_db'] = $connect_db;
//sql_set_charset('utf8', $connect_db); //변경전
sql_set_charset('utf8mb4', $connect_db);
if(defined('G5_MYSQL_SET_MODE') && G5_MYSQL_SET_MODE) sql_query("SET SESSION sql_mode = ''");
if (defined('G5_TIMEZONE')) sql_query(" set time_zone = '".G5_TIMEZONE."'");
} else {
143번 라인 쯤에 sql_set_charset('utf8', $connect_db); 를 sql_set_charset('utf8mb4', $connect_db); 로 변경한다.
2. /adm/sql_write.sql
//) ENGINE=MyISAM DEFAULT CHARSET=utf8; //변경전
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4;
마지막 줄의 charset을 utf8mb4로 변경한다.
3. /config.php
//define('G5_DB_CHARSET', 'utf8'); //변경전
define('G5_DB_CHARSET', 'utf8mb4');
내 버전에서는 사용하지 않지만 /config.php 파일에서 G5_DB_CHARSET 을 사용하는 경우, 값을 utf8mb4로 변경한다.
끝!
반응형
반응형