Caratteri accentati e MySQL vari

ad Lunam Jovem adlunamjovem@yahoo.it
Dom 16 Apr 2006 09:42:48 CEST


A quanto capisco si tratta di un problema di codifica dei caratteri.

Il tuo precedente database era in codifica utf-8, quello attuale, molto probabilmente, in codifica ISO 8859-1.

Iniziamo con un piccolo esperimento: prendi una qualunque pagina in cui visualizzi i caratteri "strambi" e 
cambia la codifica in unicode utf-8 (lo fai tranquillamente dal browser)

Se i caratteri vanno a posto significa che nel database sono stati memorizzati correttamente e che il problema 
sta solo nella diversita' di codifica di database e  front-end.
In questo caso tutto quello che devi fare e' scegliere una di queste opzioni:
a) convertire i front-end ad una codifica utf-8 (che tra l'altro e' raccomandazione w3c)
b) convertire il database ad una codifica ISO 8859-1. Lo fai con: ALTER TABLE nometabella CHARACTER SET latin1 
COLLATE latin1_general_ci


Nel caso in cui, invece, i caratteri non vadano a posto semplicemente cambiando codifica... beh sono cavoli amari.
Dovrebbe essere possibile scrivere un piccolo programmino in php che legga riga per riga i dati nel db, 
converta la codifica e li risalvi in una tabella parallela.
Il problema e' che per fare questo hai bisogno delle librerie multibyte per php, che non sono mai abilitate di 
default sui server (devi chiedere al gestore del tuo server di abilitarle o fare phpinfo per vedere se ci sono 
gia')


Claudio

	

	
		
___________________________________ 
Yahoo! Mail: gratis 1GB per i messaggi e allegati da 10MB 
http://mail.yahoo.it


Maggiori informazioni sulla lista glug