찾다

 >  Q&A  >  본문

jsonp - 배경 PHP는 json을 반환합니다. 로컬 테스트 중국어 디스플레이는 정상이지만 서버 중국어는 물음표가 됩니다.

백엔드 PHP는 MySQL 데이터베이스에서 데이터를 가져오고 출력은 json 형식으로 프런트 데스크로 전송됩니다. 로컬 테스트 중에 로컬과 서버의 PHP 파일이 연결됩니다. json 반환 데이터는 중국어로 정상이고, 서버의 json 반환 데이터는 중국어로 물음표가 됩니다.

데이터베이스 인코딩 및 구조

< /p>

conn.php 연결 데이터베이스 파일

<코드><?php
    $dbName = "라이브러리 이름";
    $conn = @ mysql_connect("데이터베이스 주소", "사용자 이름", "비밀번호") 또는 die("데이터베이스 링크 오류");
    mysql_query("세트 이름 'utf-8 "); //utf 인코딩을 사용합니다.
    $flag = mysql_select_db($dbName, $conn);
     
      
    함수 toHtmlcode($content)
    {
        return $content = str_replace("\n","<br>",str_replace(" ", " ", $content));
    }
?>

get.php는 데이터를 가져오고 json을 보냅니다

<코드><?php
header('콘텐츠 유형:application/json;charset=utf-8');
'conn.php'를 포함;
$rs = mysql_query('msg에서 *를 선택하세요');
$결과 = 배열();
while($row = mysql_fetch_object($rs)){
    array_push($result, $row);
}
$json = json_encode($result,JSON_UNESCAPED_UNICODE);
에코 $json;
?>

로컬 테스트 중국어는 정상입니다(phpstudy 환경, php5.4.45)

서버에서의 중국어 테스트에는 물음표가 가득합니다. (Alibaba Cloud 웹호스팅, php5.4.45)

过去多啦不再A梦过去多啦不再A梦2753일 전539

모든 응답(1)나는 대답할 것이다

  • 淡淡烟草味

    淡淡烟草味2017-05-16 13:03:57

    set names utf8
    utf8에는 중간에 가로 막대가 없고 작은따옴표도 없습니다

    회신하다
    0
  • 취소회신하다