개발 과정에서 mysql에 대한 PHP 연결이 깨집니다. 이는 개발 초보자가 자주 겪는 문제입니다. 모든 사람이 겪는 실제 문제를 바탕으로 문자 깨짐 문제를 9가지 핵심 사항으로 요약하여 연결 후 문자 깨짐 문제를 완전히 해결했습니다.
문자 깨짐 문제를 해결하기 위한 핵심 아이디어는 인코딩이 여러 다른 파일 시스템에서 통합되어야 한다는 것입니다.
이 9가지 사항은 다음과 같습니다.
1.html 인코딩이 MySQL 인코딩과 일치합니다
2.PHP 인코딩이 MySQL 인코딩과 일치합니다
3. 만약 문자셋을 보내기 위한 헤더가 있는 경우 데이터베이스와 동일한 문자셋을 사용해주세요
4.<meta http-equiv="Content-Type" content="text/html; charset=utf -8" /> 페이지와 일관성을 유지하려면 텍스트 인코딩이 일관성이 있어야 합니다
5. 데이터베이스 구축을 위한 문자 집합이 통일되어야 합니다
6. 테이블의 문자 집합이 동일해야 합니다. 통일되어야 한다
7. 컬럼의 캐릭터셋이 통일되어야 한다. (테이블 설정하면 기본적으로 테이블에 컬럼이 기록된다.)
8. 연결과 검증을 위한 캐릭터셋 통일되어야 합니다
9. 결과 세트의 문자 세트가 통일되어야 합니다
1. 파일 인코딩
인코딩 html 및 PHP 파일의 예에서는 notepad++를 사용하여 시연합니다. PHP와 html을 모두 이 문자 집합으로 설정합니다.
BOM 형식 없이 반드시 utf-8로 설정하세요.
2. 헤더 인코딩
php에 헤더가 있으면 utf-8이어야 합니다
header('content-type:text/html;charset=utf-8');
3. 웹페이지 헤더 파일 인코딩
html 파일 인코딩이 utf-8인 경우
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" / >
4. 데이터베이스 생성 코딩
5. 및 열 생성 테이블은 utf-8
입니다.6. 연결, 결과, 검증 문자셋 설정
Mysqli_set_charset('utf8')을 MySQL 문자로 사용 연결, 결과 및 검증에 대한 설정을 지정합니다.
참고: 데이터베이스의 문자 집합 선언은 파일의 문자 집합 선언과 약간 다릅니다. UTF8은 MySQL 데이터베이스용이고 UTF-8은 파일에 사용됩니다.