Dalla funzione API C di MySQL mysql_real_escape_string descrizione
:
Se è necessario modificare il set di caratteri della connessione, utilizzare mysql_set_character_set()
funzione invece di eseguire un SET NAMES (o SET CHARACTER SET ) dichiarazione. mysql_set_character_set()
funziona come SET NAMES ma influisce anche sul set di caratteri utilizzato da mysql_real_escape_string()
, che SET NAMES no.
Quindi non usare SET NAMES /SET CHARACTER SET ma mysql_set_charset di PHP
per modificare la codifica in quanto è la controparte di mysql_set_character_set di MySQL (vedi codice sorgente di / ext/mysql/php_mysql.c
).