본문 바로가기
MySql

MySQL php / mysql의 아랍어가 "????"로 나타납니다. html의 물음표

by 베이스 공부 2021. 1. 19.
반응형

가능한 중복 :


PHP를 사용하여 MYSQL 데이터베이스에서 아랍어 데이터를 검색하는 데 문제가 있습니다. 물음표 "????"로 나타납니다. HTML에서 :

  1. I have a database with "utf8_general_ci" as collation.
  2. The database contains some data in Arabic Language.
  3. The HTML encoding is "UTF-8".
  4. When I tried to retrieve the data in HTML, it appears as "?????".

도와주세요 !!!

 

해결 방법

 

이 쿼리로 mysql에 먼저 연결하려면 charset을 설정해야합니다.

SET CHARACTER SET utf8

예를 들어 mysqli 함수에서

$MySQL_Handle = mysqli_connect(HOSTNAME,DATABASE_USERNAME,DATABASE_PASSWORD,DATABASE_NAME) 
or die ( mysqli_error($MySQL_Handle) ); 

$sSQL= 'SET CHARACTER SET utf8'; 

mysqli_query($MySQL_Handle,$sSQL) 
or die ('Can\'t charset in DataBase'); 

및 PDO 샘플 :

$dbh = new PDO('mysql:host=localhost;dbname=' . $DB_NAME, $DB_USER,
$DB_PASS, array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'"));
$dbh->exec("SET CHARACTER SET UTF8");

이 작업은 삽입하기 전과 선택하기 전에 필요합니다.

 

참조 페이지 https://stackoverflow.com/questions/13439324

 

 

반응형

댓글