• 10-06-2018, 00:06:06
    #1
    Selam Arkadaşlar

    Php mysql input ile veritabanına mesaj gönderiyorum mesajı gönderirkende emoji ekliyorum ama emoji veri tabanında soru işareti ?? olarak kaydediliyor. Bunu çok araştırdım tam olarak sebebini veya yapılışını bulamadım.

    Veritabanına sadece güleryüz ve kalp emojisi keydediliyor. Diğerleri ?? işareti olarak kalıyor.

    Kullandığım emojili input kodu :

    http://onesignal.github.io/emoji-picker/demo/
  • 10-06-2018, 00:17:25
    #2
    Veritabanınızı, tablonuzu ve satırı utf8mb4_bin olarak değiştirip dener misiniz
  • 10-06-2018, 00:39:25
    #3
    orcuntuna adlı üyeden alıntı: mesajı görüntüle
    Veritabanınızı, tablonuzu ve satırı utf8mb4_bin olarak değiştirip dener misiniz

    Hocam utf8mb4_bin ve InnoDB utf8_unicode_ci denedim olmadı ? işareti göstermeye devam ediyor.

    Hala aynı hiç bir değişiklik olmadı.
  • 10-06-2018, 01:49:59
    #4
    Çözüm buradaki cevapta mevcut.

    https://stackoverflow.com/questions/...y-sql-database
  • 10-06-2018, 02:23:25
    #5
    Genç Hosting adlı üyeden alıntı: mesajı görüntüle
    Çözüm buradaki cevapta mevcut.

    https://stackoverflow.com/questions/...y-sql-database
    Merhaba verdiğiniz linke önceden bakmıştım denedim olmamıştı teşekkürler bende wordpress veritabanını inceleyerek emojileri aktardım.

    Mysql tablosunu : utf8mb4_unicode_520_ci yaptım.
    Türü yazan yeri : longtext yaptım.
    Karşılaştırma yazanyeri : utf8mb4_unicode_520_ci yaptım.

    Emojiler veri tabanına kaydediliyor ama veri tabanındaki bazı emojileri çekerken ? işareti olarak görünüyor.
    Sırada bu sorun var.

    Veri tabanındaki metinleri ve emojiyi çekerken <?php başlayan kodun altına aşağıdaki kodu yazdım.

    mysql_query("SET NAMES 'utf8mb4'");
    mysql_query("SET CHARACTER SET utf8mb4");
    mysql_query("SET COLLATION_CONNECTION = 'utf8mb4_unicode_520_ci'");

    İşlem tamamdır sorun yaşayan veya uygulamak isteyen arkadaşlar burada yazdıklarımı uygulaya bilirsiniz.