Uno dei problemi che più affligge uno sviluppatore quando si trova a dover realizzare siti multilingua è quella di riuscire a gestire al meglio la codifica dei caratteri, con questa semplice guida cerchiamo di risolvere definitivamente ogni problema..

Recentemente mi sono dovuto cimentare nella realizzazione di un sito multilingua in php che doveva supportare lingue con set di caratteri UTF-8, come il cirillico. Dopo aver sbattuto la testa più volte sono finalmente riuscito a trovare una soluzione definitiva per risolvere ogni tipo di problema, ecco qui proposti tutti i passi da eseguire:

 

1) Modifica FILES:

Assicuratevi che tutti i file che compongono il vostro sito siano codificati come UTF-8 senza BOM, per poterlo verificare aprite ogni file con un editor come l'ottimo Notepad++ o il classico blocco note. Se la codifica è diversa convertire il file o risalvatelo con la giusta giusta opzione.

 

2) Metatag HTML:

Una volta convertiti tutti i file è opportuno che nell'head delle pagine indichiate il giusto tipo di charset, ovvero UTF-8 come riportato qui di seguito:

 

<meta http-equiv="content-type" content="text/html; charset=UTF-8" />

 

3) Configurazioni MYSQL:

Adesso non resta altro da fare che impostare la giusta codifica anche al MYSQL, per farlo accedete al PhpMyAdmin e seguite le seguenti istruzioni.

  1) Selezionate il database interessato > cliccate su OPERAZIONI > in basso impostate come Collection utf8_general_ci > cliccate su esegui

  2) Adesso occorre seleziona ogni tabella del database e sempre da operazioni > Collection impostate per tutti il medesimo set di caratteri ovvero utf8_general_ci
 
  3) Stessa procedura occorre farla anche per ogni campo di ogni tabella quindi: selezionate la tabella > struttura > modifica campo > Collection utf_general_ci

 

4) Configurazioni PHP:

In ambiente php, occorre fare ancora 2 piccole variazioni per evitare così ogni problema:

1) Occorre lanciare una query subito dopo aver avviato la connessione al database in modo da comunicare a MYSQL
il tipo di set di caratteri che andremo ad utilizzare, per farlo basti utilizzare il seguente codice:

 

mysql_query("SET NAMES utf8");

 

2) E' consigliato d'indicare il tipo di charset anche mediante l'invio di un header, per farlo basti copiare ed incollare codice in testa ad ogni pagina:

 

header('Content-type: text/html; charset=utf-8');

 

 

Seguite e rispettate con attenzione questi punti e potrete finalmente supportare la codifica UTF-8 senza problemi nei vostri siti web. Se avete ancora dei problemi lasciate un commento qua sotto, alla prossima!



Ti è piaciuto questo articolo? Allora condividilo con i tuoi contatti!

Commenti

  • Maks scrive il 21/03/2012

    Ottimo. Ha funzionato al primo colpo. Sono mesi che metto pezze tra pagine web e database...

  • Nicola Vianello scrive il 16/02/2012

    Grazie finalmente una soluzione completa a questo problema! mi hai salvato la vita ! GRANDE

  • mehdi scrive il 02/07/2011

    mi ha risolto il problema degli accentati. grazie

  • Kyme scrive il 27/05/2011

    Dopo molto peregrinare in cerca di una soluzione, sono approdato a questa pagina, e ho potuto risolvere immediatamente il mio problema. Grazie! Veramente essenziale ed efficace l'articolo.

  • Marcello scrive il 21/04/2011

    Un articolo davvero interessante, con semplici parole avete spiegato un problema serio per noi sviluppatori. Ho seguito alla lettera il tutto e non ho più problemi di visualizzazione sulla visualizzazione ad esempio del cirillico. GRAZIE!

1

Aggiungi un commento

* Copia il codice di verifica

Cd e Dvd vergini

News in pillola

  • Doodle Robert Doisneau

    Google festeggia il 100° anniversario della nascita di Robert Doisneau, famoso fotografo Francese, con un Doodle realizzato mediante alcune delle sue...

Categorie blog

Etichette notizia

Sponsor

Toner stampanti