[제나플러스] MySQL DB 생성시 UTF8로 기본으로 해주지 않는곳에서의 설정 > 팁앤테크

본문 바로가기

사이트 내 전체검색

뒤로가기 팁앤테크

[제나플러스] MySQL DB 생성시 UTF8로 기본으로 해주지 않는곳에서의 설정

본문

MySQL DB 생성시 UTF8로 기본으로 해주지 않는곳에서의 설정


안녕하세요..^^

한국내에서는 UTF8이면은 UTF8로 DB나 테이블이 생성되어서 걱정이 없습니다.
하지만, 제가 사용하는 외국 웹호스팅에서는 UTF8을 지원을 해주면서도 latin 형식으로 해 놓은곳이 있어서 추후에 UTF8로 하기위해서 테이블 생성이나 그누보드와 MySQL DB간에 연결 설정을 조금 하였습니다.


MySQL 버전은 5 버전인데, UTF8로 해 놓으려니 잘 되지도 않고, 외국이다 보니 몇가지를 계속 영어로 하고는 있지만은 그래도 이런것을 하기도 귀찮고 짧은 영어 실력에 되지 않다 보니 그누보드의 소스를 수정 하여서 조금 엉뚱하게 UTF8로 설정을 해 놓았습니다.



install 할 당시에도 넣어 놓았지만은 잘 되지 않아서 일단은 좀더 생각을 해 보아야 하지만 install 이후에는 UTF8로 DB에 저장이 되는듯 합니다.


먼저 install 디렉토리 내에 sql_gnuboard4.sql 파일을 수정을 하였습니다.
이곳에서 해주지 않으니 utf8로 만들어지지 않아서 조금 골치가 아팠습니다.

위에 파일을 열어 보시면은 각 테이블 생성시에 설정후에 " ); " 로 종결 되는 부분이 있습니다.


이곳에서 아래와 같이 수정을 합니다.

원본 : 

  PRIMARY KEY  (`gr_id`)
);

수정후 

  PRIMARY KEY  (`gr_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;


추가된 부분은 ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci 이 부분 입니다..

collate 나 charset 을 utf8로 설정을 하여서 테이블 설정시에도 하도록 만들어 놓은 것입니다.


그리고 나서 다른분의 활용팁을 참고 하여서, DB와 연결 부분에 약간의 수정을 하였습니다.

lib / common.lib.php 파일을 열어가지고 1026줄 근처에 보시면은 아래와 같이 있습니다.

원본

// DB 연결
function sql_connect($host, $user, $pass)
{
    return @mysql_connect($host, $user, $pass); 
}

수정본

// DB 연결
function sql_connect($host, $user, $pass)
{

    $connect = @mysql_connect($host, $user, $pass);
    @mysql_query("SET character_set_client = utf8");
    @mysql_query("SET character_set_results = utf8");
    @mysql_query("SET character_set_connection = utf8");
    return $connect;
   

}




위에 처럼 추가를 하여서 DB와 의사소통(?)간에 utf8로 하도록 하였습니다..^^;;
확실히 몰라서 추가된것도 있지만은 일단은 실패하지 않고 하였던것 같습니다....


모든것을 하고 가장 중요한것이 게시판 생성시에도 되어야 한다는 것입니다..
이것도 그누보는 sql 파일을 불러 와서 만들기때문에 이쪽에서 설정을 해주어야 합니다.

adm / sql_write.php  파일을 열어가지고 제일 아래쪽에 내려가시면은 아래와 같이 보이실것입니다.

원본

  PRIMARY KEY  (`wr_id`),
  KEY `wr_num_reply_parent` (`wr_num`,`wr_reply`,`wr_parent`),
  KEY `wr_is_comment` (`wr_is_comment`,`wr_id`)
);


수정 후

  PRIMARY KEY  (`wr_id`),
  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 COLLATE=utf8_unicode_ci;

이렇게 함으로 인해서 게시판 생성도 UTF8로 만들어 질것입니다....^^


 아직 큰 문제는 찾지 못하였지만은 워낙에 실력이 없는 저로서는 짜집기 한것이여서 어떤 문제가 발생할지 모르겠습니다..ㅠㅠ


저보다 실력 좋으시고 지식이 많으신분들이 보시고 좀 도와 주시기 바랍니다.^^

추천0

댓글목록 0

등록된 댓글이 없습니다.

전체 825건 24 페이지
게시물 검색
Copyright (c) 株式会社YHPLUS. All rights reserved.

사이트 정보

株式会社YHPLUS / 대표 : ZERO
〒171-0014 東京都豊島区池袋2-41-5 アーバン154 8F
050-5539-7787
오픈카카오톡 (YHPLUS) :
https://open.kakao.com/o/slfDj15d

PC 버전으로 보기