Buongiorno a tutti quanti.
Spero riuscirete a risolvere il mio problema e spero di spiegarmi nel migliore dei modi..
Ho una pagina HTML con codifica utf8
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
Ho una tabella mysql di tipo MyISAM con collation utf8_general_ci
Ho riempito questa tabella facendo da phpmyadmin una IMPORTA
importando una tabella formato CSV
Il punto è questo:
in phpmyadmin io vedo tutti i dati della tabella visualizzati correttamente (apostrofi, lettere accentate ecc.)
Ma se provo a visualizzarli nella mia pagina HTML gli apostrofi ed alcuni altri caratteri si vedono
male (con un carattere di punto interrogativo con sfondo nero)
Ho provato a tirare su i dati con tutti questi comandi (a volta)
$field = htmlspecialchars_decode(htmlentities($field));
$field = htmlspecialchars($field, ENT_NOQUOTES, "UTF-8");
$field = htmlspecialchars($field);
$field = html_entity_decode($field);
$field = mysql_escape_string($field);
$field = addslashes($field);
$field = stripslashes($field);
$field = htmlentities($field);
L'unico comando che funziona è il primo ( htmlspecialchars_decode(htmlentities($field)); )
Questo comando in effetti mi fa visualizzare correttamente le lettere accentate. ma per alcuni caratteri come il famoso apostrofo non funziona...
l'apostrofo che intendo dire è questo nell'esempio qui sotto
365 giorni all’anno
http://www.farfalla-project.it/demo/img/apostrofo.jpg
insomma questo ed altri caratteri nella mia pagina non vengono visualizzati
A questo punto la mia domanda è:
se in phpmyadmin (che è una pagina generata da php e visualizzata su HTML con codifica utf8) quel benedetto apostrofo si vede come mai io non lo vedo visualizzato correttamente sulla mia pagina ? E' tutta la mattina che ci sbatto la testa...
Quale è il modo per visualizzare correttamente questi caratteri ?
Notare che il problema non è di inserimento in MYSQL ma semplicemente di recuperare o visualizzare correttamente un carattere che già sta dentro la tabella...

Rispondi quotando

