Från MySQL:s C API-funktion mysql_real_escape_string beskrivning
:
Om du behöver ändra teckenuppsättningen för anslutningen bör du använda
mysql_set_character_set()funktion istället för att köra enSET NAMES(ellerSET CHARACTER SET) påstående.mysql_set_character_set()fungerar somSET NAMESmen påverkar också teckenuppsättningen som används av mysql_real_escape_string() , somSET NAMESinte.
Så använd inte SET NAMES /SET TECKENSET men PHP:s mysql_set_charset
för att ändra kodningen eftersom det är motsvarigheten till MySQL:s mysql_set_character_set (se källkoden för / ext/mysql/php_mysql.c
).