Dei consigli per trasformare il database del proprio blog o sito da latin1_swedish_ci in utf8. Un tip utile quando si effettua “un trasloco” del proprio database, presso un nuovo hosting provider.
Aiuto, i miei post o articoli hanno dei caratteri incomprensibili ! E’ la prima esclamazione dopo un “trasloco manuale” del proprio database presso un nuovo hosting provider, un classico problema di character encoding. A causa di formati differenti nell’archiviazione nel database, possiamo avere in output caratteri come â€
Il problema può essere circoscritto in ambito europeo a spostamenti tra database latin1_swedish_ci in utf8 . La soluzione è però semplice, specie se abbiamo effettuato un trasloco di un database wordpress. In tal caso la soluzione migliore è un export della tabella originale degli articoli in locale, si tratta della tabella wp_posts
Ora, tramite un notepad come Notepad ++ apriamo il file wp_posts.sql e controlliamo attentamente il contenuto degli articoli, i segni “strani” non appaiono, ciò perchè notiamo correttamente le lettere accentate come è o à.
Ottimo, sarà da effettuare una “trasformazione”. Apriamo la pagina Web “HTML encoding of foreign language characters” (link: http://www.thesauruslex.com/typo/eng/enghtml.htm) e copiamola sul nostro PC stando attenti alla sezione “Italian”. Ora, in base a ciò che dice la tabella, sostituiamo ogni singola lettera accentata degli articoli con il relativo codice html. Si tratta di un procedimento un pò “laborioso” ma funziona, di più rispetto a (certe) soluzioni che vengono offerte da script php, molte volte si bloccano lasciandoci con il lavoro a metà.
Unica nota, manca il “;” a destra dell’html encoding della lettera à, dovremo aggiungere tale segno per poter riconoscere tale lettera al termine della procedura. Al termine della procedura di sostituzione salviamo il file sql e effettuiamo l’import all’interno del nostro database, rimuovendo eventualmente la tabella precedente se tale nuova tabella non ha il “DROP” (in tal caso l’eliminazione della tabella precedente sarà automatica).
FONTI DI AIUTO NEI PROBLEMI DI CHARSET:
- Mysql database migration and special characters
- The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets
- How Bits and Bytes Work
- HTML encoding of foreign language characters