테스트 사이트 - 개발 중인 베타 버전입니다

db 언어셋 euc-kr => utf-8 관련 채택완료

김무식2 2년 전 조회 1,442

db에서 받아온 변수가 계속 euc-kr 언어셋이라 

제가 확인해본 결과 스샷1, 스샷2 같이 되어 있고,

 

가비아에 문의한 결과 서버쪽 언어셋은 utf-8이라고 계속 그러는데

고수님들이 스샷보시고 뭐가 문제인지 부탁드립니다 ㅠㅠ

 

스샷1

 

스샷2

 

가비아 답변

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트

mysql version이 어떻게 되는지 모르겠지만 최근 버전에는

character set을 지정하는 곳은 많습니다.

 

connection 이후(DB 지정) client character set을 utf8로 지정하면 

select 결과가 알아서 euc-kr에서 utf8로 바뀝니다.

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 5개

김무식2
2년 전
클라이언트 쪽, 즉 제가 코드에 언어셋 지정하면 된다는 말씀이신가요?
김무식2
2년 전
버전은 mysql 8.0입니다
엑스엠엘
2년 전
https://dev.mysql.com/doc/refman/5.7/en/set-names.html
참고하세요.
김무식2
2년 전
네, 감사합니다 mysqli_query($conn, "SET NAMES 'utf8mb4'"); 로 해결 되었습니다. 그런데 가비아는 왜 계속 자기네들 db 세팅이 euc-kr인데 아니라고 하는 걸까요? 언어셋 변수가 한개가 아니라 여러개가 euc-kr인것 같은데 계속 utf-8 맞다고 답변 주네요.
엑스엠엘
2년 전
가바아가 말한 것은
mysql server DB의 default character set입니다.
특별히 지정하지 않으면 이 것으로 지정되는데
본문을 보니 테이블을 만들 때 해당 테이블을 euc-kr로 만든 듯하네요.

show create table 테이블이름
https://dev.mysql.com/doc/refman/8.0/en/show-create-table.html
하면 character set이 어떻게 지정되어 있는지 보여 줍니다.

댓글을 작성하려면 로그인이 필요합니다.

복스리
2년 전

https://bstar36.tistory.com/307

 

참고가 되실꺼 같아서 안내드려봅니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인