- Home
- Categorie
- Coding e Sistemistica
- PHP
- Problemi charset
-
Problemi charset
*Salve, ho un problema chwe mi sta facendo uscire di testa
ho impostato l pagine del sito con il tag
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />campi e tabelle in :
***utf8_general_cidigitando nei vari campi questi caratteri**: ò à ù è ì é
**
normalmente funziona bene anche se mi ritrovo caratteri nel DB sotto questa forma: *ò|à |ù|è|ì|Ã, ma la pagina li visualizza bene, allora per far un buon lavoro ho forzato mysql a prendere i caratteri corretti con questa stringa: **mysql_query("SET CHARACTER SET 'utf8'");**mi sono detto, bene, funziona alla grande.
il problema? non riesco a gestire il mod_rewrite non riesco a orrenere oaueie da *ò à ù è ì é, in nessun modo, non riesco a salvare questa benedetta stringa su un campo del database, tantomeno a farla al volo, chi mi aiuta? *:(
grazie Andy
-
Ti do dei consigli per evitare problemi:
- Imposta mysql_set_charset dopo che ti connetti al database.
- Imposta AddDefaultCharset utf-8 nel .htaccess
- usa mb_detect_encoding prima di salvare dati nel database
- usa utf8_encode e utf8_decode in seguito ai risultati di mb_detect_encoding
Le lettere accentate nel database devono arrivarti giuste, quello che devi fare per arrivare al problema è monitorare in ogni passaggio qual'è la codifica della tua stringa.
Un altro metodo, più semplice ma concettualmente sbagliato è quello di convertire le accentate in entita html prima di salvare.