Ciao,
ho il seguente problema:
Con Android faccio una connessione HttpClient per interrogare il mio db MySql tramite script PHP.
Quando nel campo del db ci sono parole accentante, il risultato della codifica Json è:
[{"id1":"49","utent1":"8","luogo":null}]
dove luogo è in realtà: "Via dell'Unità D'Italia"
Ora... leggendo un po' su internet ho capito che devo utilizzare UTF-8. Ma forse non riesco e sbaglio da qualche parte.
Con Notepad++ ho modificato lo script PHP scegliendo come Formato: Converti UTF-8.
Questo il mio script php:
Codice PHP:
$q=mysql_query("SELECT * FROM `tabella1` WHERE id1=49");
while($e=mysql_fetch_assoc($q))
$output[]=$e;
print(json_encode($output));
Questo quello che uso in Java:
Codice:
BufferedReader reader = new BufferedReader(new InputStreamReader(is,"iso-8859-1"),8);
Dove al posto di "iso-8859-1" ho messo "UTF8"
ma il risultato non cambia, ottengo sempre null :(
PS: il mio db ha come Collation: utf8_general_ci
EDIT:
Ho risolto da solo :D
bastava mettere nello script php:
Codice PHP:
mysql_query("SET CHARACTER SET utf8");