대부분의 경우 동일 문자셋 (utf-8) 을 사용하지 않고 모든 지점에서 데이터가 엉망이 될 수 있습니다. 당신이하고있는 정확하게에 따라, 당신은/변경 다음 사항 중 하나 이상을 추가해야합니다 (어쩌면 그것은 당신이 잊고 SET CHARSET
/mysql_set_charset
의) :
는 UTF-8을 사용하기 위해 MySQL을 말한다. 이것을하기 위해서, 당신의 저에게 이것을 추가하십시오.CNF는 :
collation_server = utf8_unicode_ci
character_set_server = utf8
MySQL과 상호 작용하기 전에,이 두 querys을 보내 : 또는
SET NAMES 'utf8';
CHARSET 'utf8';
또는, PHP 연결을 연 후이 작업을 수행 할 수 있습니다 :
를
mysql_set_charset('utf8', $conn); // when using the mysql_-functions
mysqli::set_charset('utf8') // when using mysqli
세트 UTF-8 데이터베이스
CREATE DATABASE `my_db` DEFAULT CHARACTER SET 'utf8';
의 디폴트 캐릭터 세트와 같은 테이블에 대해 동일한 작업을 수행합니다
CREATE TABLE `my_table` (
-- ...
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
클라이언트를 가정 브라우저 인 경우 콘텐츠를 utf-8 및 t 그는 올바른 헤더 :
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
하고, 마지막으로, 말씀 :
header('Content-type: text/html; charset=utf-8');
이 메타 태그를 추가, 브라우저가 이해 정말 확인하기 utf-8을 사용하여 양식을 제출하는 브라우저
당신은 모든 문자열은 또한 정렬 다음이 저장
확인 어떤 목표 테이블 필드 : \t utf8_general_ci는 –
여기 cherset에 의해 발생하는 문제는 UTF-8이어야한다 (DB에 데이터를 삽입하거나 사용 -general) 및 charset은 db에 연결할 때 설정됩니다. MySQL의, PDO 및 mysql_ * 모두 –
연결시 기본 문자 집합을 설정하는 기능이 있습니다. 쿼리를 실행하기 전에 다음 중 하나를 실행하십시오 : SET NAMES utf8 –