Programmer/etc.
mysql과 웹 사이의 한글연동 문제
dino_j
2015. 11. 11. 12:38
처음엔 생각없이 mysql 테이블을 euc-kr , php는 utf-8로 지정하였다.
화면으로 넘어오면서 테이블이 깨지길래 php를 euc-kr로 지정해 봤지만 이번엔 php의 한글이 깨진다.
mysql에서 테이블을 utf8_general로 다시 설정하고 csv파일 인코딩도 utf8로 해서 실행했다.
이번에는 파일을 테이블에 import할 때 오류가 난다. 다 깨진다.
csv파일 인코딩은 ansi로 저장, 테이블은 utf8로 캐릭터셋을 설정하고 저장한다.
다시 php를 불러왔으나 역시 깨진다.
이것저것 검색해 보다가 내가 얻은 해결은
mysql데이터를 fetch해주기 전에
mysql_query("set session character_set_connection=utf8;");
mysql_query("set session character_set_results=utf8;");
mysql_query("set session character_set_client=utf8;");
이렇게 세줄을 넣는거였다.
문제는 해결했지만, 왜 테이블을 uft8로 설정하고 파일 임포트 할 때도 uft8로 설정해서 파일을 임포트 시켰는데 csv파일 자체는 ansi만 깨지지 않고 들어가는지... 음..