본문 바로가기

DataBase/My-Sql

[펌]한글 데이타가 깨질때

mysql이 utf-8로 설정 되어 있고, 분명히 php페이지에 'utf-8'로 지정을 해주고, 저장도 'utf-8'로 했는데도... DB에 들어갈 때부터 깨져서 들어가고 있었다...

정말 이틀에 가까운 시간 검색과 테스트만 한 것 같다...
그렇게 해서 결국 해결했는데, 방법은 열받게 간단하다...ㅜㅜ;;

테이블이 UTF-8이더라도, MySQL에 접속한 후에 SET NAMES utf8을 실행하여 해당 연결의 인코딩을 UTF-8로 바꾸어야 합니다.
mysql에 접속해서 다음과 같이 날려보자.

mysql> show variables like 'character%';

utf-8이면 다행이겠지만 그렇지 않다면 다음과 같이 SET NAMES utf8을 실행해 줘야 한다.
이런식으로...

mysql_connect(....);
mysql_query
("SET NAMES utf-8");


이렇게 해주고 나머지 쿼리를 날려주면 아주 잘 들어간다...

참고 & 원문 ;
http://forum.standardmag.org/viewtopic.php?id=1636