• User Newbie

    problema salvataggio mysql emoticon

    Salve a tutti , volevo porvi una domanda a cui non riesco trovare soluzione.
    Vorrei salvare delle emoticon presenti al interno di un form insieme a del testo in un database mysql.
    Al momento dopo molta ricerca ho capito che dovevo cambiare nel DB , tabelle e colonne il set utf8 con utf8mb4.
    ma anche dopo queste modifiche le mie query non mi salvano nulla lasciano un campo vuoto solo se ci sono presenti delle Emoticons.

    Spero che qualcuno sappia darmi qualche consiglio.
    grazie a tutti


  • Consiglio Direttivo

    Ciao Zorcraft, non credo che puoi salvare l'emoticon sul DB in mezzo al testo, anche perché quello che vedi è il risultato di un tag HTML.

    O ti salvi l'equivalente HTML dell'emoticon (<img src="../percorsoemoticon/emoticon.png" />) con il testo.
    O salvi solo il nome come tag: [emoticon1], che poi dovrai tradurre durante il rendering della pagina.
    Oppure inserisci una tabella di codifica delle emoticon che salvi il codice univoco come testo che poi verrà tradotto:
    Es tabella
    Codice emoticon | immagine emoticon
    [emoticon1] | allegria.png
    [emoticon2] | sorriso.png

    🙂


  • User Newbie

    non sono sicuro e probabilmente mi sbaglio, ma se guardi il codice di una pagina alcune emoticon sono come dici tu altre invece sono effettivamente un carattere e alcuni set dovrebbero comprenderle tipo utf8mb4 , per esempio questa se ispezioni il codice e un immagine 🙂 , ma questa invece e un carattere �� credo


  • User Newbie

    questo database non riconosce il carattere che ho messo , e questo che voglio risolvere.
    metto il link per vedere il carattere che intendo http :// apps.timwhitlock.info/unicode/inspect/hex/1F601


  • Consiglio Direttivo

    Ok, capito credo, ma in quel caso devi aver installato il font sulla macchina, prima di ogni altra cosa.

    The Symbola font can be downloaded here.

    Avere poi la tabella in utf8mb4 e fare il rendering della pagina sempre in utf8mb4.

    E' come l'ASCII che si usa sul normale HTML ma devi per prima cosa avere un interprete (il font in questo caso).


  • ModSenior

    Ciao,
    dovresti settare tutto su utf8mb4_unicode_ci, anche la connessione verso il db. Puoi farlo o a runtime con set names, oppure modificando il file di configurazione del database.