서버 데이터베이스 인 코딩 형식 문제 해결 방안

질문
최근 프로젝트 를 아 리 클 라 우 드 서버 에 배치 한 후 두 가지 문제 가 발생 했 습 니 다.
1.난 장 판 문제.
2.ajax 의 phop 처리 페이지 에서 jsonencode()함수 가 json 데 이 터 를 되 돌려 주면 데이터 베 이 스 는 UTF 8 만 되 돌 릴 수 있 고 gbk 라면 json 도 되 돌 릴 수 없습니다.
데이터베이스 인 코딩 형식 문제 가 발견 되 었 습 니 다.사이트 에서 사용 하 는 인 코딩 형식 은 UTF 8 이 고 데이터베이스 인 코딩 형식 은 UTF 8 로 바 뀌 었 으 나 characterset_server 의 값 은 gbk 입 니 다.
데이터베이스 인 코딩 보기:
my sql 명령 줄 에 입력:show variables like'character%';

그래서 어 지 러 운 코드 가 있 습 니 다.
그래서 인터넷 에서 해결 방법 을 찾 았 다.
my sql 명령 행 에 입력:set characterset_server=utf8;

OK.수정 성공!데 이 터 를 되 돌려 주 는 것 도 정상 이지 만 데이터베이스 서 비 스 를 닫 고 다시 시작 하면 set characterset_server 가 다시 gbk 로 돌 아 왔 습 니 다.
그래서 이 방법 은 일시 적 으로 해결 할 수 밖 에 없다.
마지막 으로 사용 할 수 있 는 좋 지 않 은 해결 방법 을 찾 았 습 니 다.SQL 문 구 를 실행 하기 전에 이 SQL 문 구 를 먼저 실행 하면 됩 니 다.

$conn->query('SET character_set_client = utf8;');
$conn->query('SET character_set_results = utf8;');
$conn->query('SET character_set_connection = utf8;');
이런 해결 방법 은 개인 적 으로 느낌 이 좋 지 않 아서 매번 실행 하 는 횟수 가 너무 많 기 때문에 서버 데이터베이스 의 인 코딩 형식 을 수정 할 수 있다 면 가장 좋다.
읽 어 주 셔 서 감사합니다. 여러분 에 게 도움 이 되 기 를 바 랍 니 다.본 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!

좋은 웹페이지 즐겨찾기