2017-02-16 4 views
-2

ソケットを介してNodeJSサーバーと通信するアプリケーションと、HTTP経由でPHPと通信するアプリケーションと、PHPがMySQLを使用しているアプリケーションがあります。MySQLを使用したAndroidアプリケーションでのemojisの保存と表示

Emojisをテキストフィールドに挿入してDBに保存しようとすると、元に戻すと「?」が表示されます。

Iは、(例えば✒️ ❤️ ️ ️用)ウィキペディアから絵文字をコピーし、それは✒️ ❤️ ?️ ?️

注意を示し、私はそれらを選択したときに、DBにそれらを強制する場合:DBにフィールドをutf8mb4binあります。

  • 私のデバイスからemojisを直接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)コード:

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:

$database_connection = new mysqli($server, $user,$password,$database_name); 
    $database_connection->set_charset("utf8mb4"); 
関連する問題