본문 바로가기

개발TIP - DEVELOPMENT

PHP에서 텍스트 파일 읽어서 Mysql Insert 시 인코딩 문제 해결

반응형

PHP를 이용해서 Mysql DB에 데이타를 넣을 일이 있었는데, 계속 오류가 날때 해결방법입니다.

 

DB , PHP 소스, 텍스트파일 모두 euc-kr로 캐릭터셋을 맞췄는데 DB에 들어가질 않아서 쿼리문 자체를 콘솔로 출력해서 넣어보면 잘 들어가는데 이상하게 PHP로 돌리기만 하면 안되더라고요.

 

Mysql_query 오류 확인 법

myql_query (쿼리문); 

echo mysql_errno().":".mysql_error();

위 명령으로 어떤 에러가 나는지 확인 가능합니다.

 

에러는 중간 한글 들어간 부분 때문에

01366:Incorrect String Value 라고 에러가 나네요.

 

해결방법 

해결방법은 간단합니다.

DB 연결 시 mysql_connect(...) 뒤에 캐릭터셋 설정한번 해주시면 됩니다.

mysql_query('set names euckr');

 

요거 한줄 넣어주고 모든 데이타가 아주 잘~ 들어가네요.

반응형