• User Newbie

    [Risolto] caratteri speciali in php e mysql

    Ciao a tutti.
    Grande problema.
    Sto creando un'applicazione che consente di registrare prodotti, quindi descrizione, codice etc.
    Il problema è che questa applicazione viene collegata tramite un plugin a Adobe Indesign, che si ricava i dati e impagina un catalogo con questi.
    Ora a me interessa che ciò che l'utente digita rimanga tale e quale nel campo di mysql. Non ho problemi per la visualizzazione web perchè registro in un altro campo con le dovute conversioni quello che serve per la visualizzazione; ciò che conta è che per esempio il carattere "?" mi rimanga tale e non venga trasformato in "â?¢" e che le lettere accentate rimangano tali. Ho provato a cambiare codifica, usando utf-8, latin_roman... sia nel DB che nella codifica della pagina: niente da fare.:x
    Qualcuno ha qualche idea?
    Grazie
    ciao


  • User Attivo

    Ciao g1g1r1v4 e benvenuto nel Forum GT!

    Quando lavori in utf-8 devi semplicemente fare attenzione che tutte le codifiche siano specificate.

    In particolare verifica quanto segue:

    • Se la pagina che prende i dati è una pagina html, assicurati che sia impostato
      [HTML]<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />[/HTML]
    • Assicurati che la pagina che prende i dati e quella che li elaborano siano salvate in utf-8, senza BOM (con dreamweaver puoi impostarlo facendo Ctrl+J)
    • In php, dopo aver stabilito la connessione e selezionato il database, lancia un
      [php]mysql_query("set names 'utf8'");[/php]

    Non dovresti più avere problemi... 😉


  • User Newbie

    Caro Lucabartoli, non so come ringraziarti. Funziona alla stragrande. Ti devo almeno una cena, se penso che ci ho perso ore ... Grazie infinite.:wink3:


  • User Attivo

    Figurati!
    So che vuol dire litigare con l'utf-8, perché a suo tempo anch'io ho perso tantissimo tempo per scoprire che mancava solo una sciocchezza. 😉


  • User Newbie

    Ciao a tutti.
    Un anno fa avevo postato una domanda simile e risolto grazie all'aiuto di Lucabartoli. Si trattava di risolvere il problema dell'inserimento dei caratteri accentati in mysql mediante imput da tastiera. Ora ho invece il problema di importare i dati da un file excel o csv. Nessun problema nel leggere i file e nell'inserimento in mysql, senonchè appena viene trovata una vocale accentata, tutto il resto del testo (per quel campo) viene ignorato. Le ho provate tutte (compreso il prezioso suggerimento della codifica in utf-8 della pagina, ma il problema permane.
    No so proprio dove sbattere la testa.
    Grazie
    Ciao:x


  • User Newbie

    Salve a tutti,
    sto provando ad importare dei dati in fabrik, solo che ho dei problemi con dei caratteri.

    Luca dice

    • Se la pagina che prende i dati è una pagina html, assicurati che sia impostato
      Codice HTML:

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

    • Assicurati che la pagina che prende i dati e quella che li elaborano siano salvate in utf-8, senza BOM (con dreamweaver puoi impostarlo facendo Ctrl+J)
    • In php, dopo aver stabilito la connessione e selezionato il database, lancia un
      Codice PHP:
      mysql_query("set names 'utf8'");

    Dove dovrei verificare se i parametri sono impostati correttamente?
    Grazie a tutti