2017-02-16 4 views
-2

소켓을 통해 NodeJS 서버와 통신하는 애플리케이션을 가지고 있고, 서버가 HTTP를 통해 PHP와 통신 중이며 PHP가 MySQL을 사용하고 있습니다.MySQL을 사용하는 안드로이드 애플리케이션에서 이모티콘 저장 및 보여주기

Emojis를 텍스트 필드에 삽입하고 DB에 저장하려고하면 다시 가져올 때 "?"가 표시됩니다.

I (예 ✒️ ❤️ ️ ️에 대한) 위키 피 디아에서 그림 이모티콘을 복사하고 ✒️ ❤️ ?️ ?️

참고를 보여줍니다 내가 그들을 선택하면 DB에 강제 경우 DB에 필드를 utf8mb4bin입니다.

  • 내 장치에서 DB로 직접 이모티콘을 저장할 수없는 이유는 무엇입니까?
  • 일부 그림이 표시되는 이유는 무엇입니까?

: 나는 또한하지만 운, 단지 PHP와 MySQL을 시도했다.

답변

3

) 1. 데이터베이스 : 데이터베이스 기본 수집을 ** utf8mb4 **로 변경하십시오.

2) 테이블 : 테이블 세트를 다음과 같이 변경하십시오. ** CHARACTER SET utf8mb4 COLLATE utf8mb4_bin **.

Query :                                       

     ALTER TABLE Tablename CONVERT TO CHARACTER SET utf8mb4 COLLATE 

utf8mb4_bin 

3) 코드 :

$database_connection = new mysqli($server, $user,$password,$database_name); 
    $database_connection->set_charset("utf8mb4"); 
: 데이터베이스 연결에

insert into tablename (column1,column2,column3,column4,column5,column6,column7) values ('273','3','Hdhdhdhhzhzhzzhjzj 我爱你 ❌',49,1,'2016-09-13 08:02:29','2016-09-13 08:02:29') 

4) 세트 utf8mb4