2011-05-09 4 views
0

MySQL MyISAM 테이블의 varchar 열에 다중 언어 문자가 삽입되었습니다.데이터베이스에 특정 문자가 삽입되지 않습니다.

하나의 특정 문자, 나는 삽입에 실패한 사람들이 확신 해요 :이 문자이고 어떻게 단어 전체에 영향을주지 않고이 문자를 변환 할 수 있습니다 무엇

. 이 단어를 조작하는 데 사용할 수있는 서버 측 코드는 PHP입니다. 이 기호를 포함하여 실제 단어의

예는 다음과 같습니다

portugus

espaa

제대로이 말을 삽입하는 가장 좋은 방법은 무엇입니까?

+0

이는 대체 문자입니다. 문자 인코딩 불일치가 어느 시점에서 발생했습니다. 이 성격을 정확히 어디서 볼 수 있습니까? 제출 된 데이터를 가져온 후, PHP를 사용하여 DB에 삽입하기 전에? 또는 DB 관리 도구를 사용하여 DB에 삽입 한 후? 또는 PHP를 사용하여 DB에서 검색 한 후 웹 브라우저로 보내기 전에? 또는 웹 브라우저를 사용하여 HTML로 데이터를 표시 한 후에? – BalusC

+0

DB에 삽입하기 전에. 코드베이스를 살펴보고 삽입 된 데이터가 이미 조작되었는지 확인해야합니다. – HGPB

+0

어떻게 보거나 표시하고 있습니까? 다시 브라우저에 표시하면 되나요? 그렇다면'header ('Content-Type : text/html; charset = utf-8')'에 의해 올바른 응답 인코딩을 설정 했습니까? – BalusC

답변

1

올바른 캐릭터 세트를 얻는 것은 약간의 임무가 될 수 있습니다. 몇 주 전에 작성한이 블로그 게시물을 살펴보고이 문제를 다루어야합니다. 문제가 계속되면 여기에 다시 게시하십시오.

How to Avoid Character Encoding Problems in PHP

+0

고마워요, 제가 살펴 보겠습니다. – HGPB

+0

"PHP 문자열 함수는 유니 코드를 인식하지 못합니다."라는 말은 내 문제였습니다. 링크를 가져 주셔서 감사합니다. – HGPB

+0

자세한 정보는 http://www.phpwact.org/php/i18n/utf-8을 참조하십시오. – HGPB

관련 문제