Asian language problems
Posted by:
James Hill
Date: February 27, 2009 07:53PM
Right, I'm having some rather strange issues between mysql and php when it comes to inserting Japanese text. I have the table and fields set to utf8_unicode_ci, if I use phpmyAdmin to insert japanese text through the interface it works just fine. If I use phpmyadmin but type in the mysql insert command in the interface it works just fine. If I use php to connect to the database and insert the text I get what looks like the ascii codes in the record rather than the text.
So:
インジェクターが点火順序で個別に開く
Is converted to :
インジェクターが点火順序で個別に開く|&#
The php I'm using is:
$link = mysql_connect($DBhost,$DBuser,$DBpass);
mysql_set_charset('utf8',$link);
$db_selected = mysql_select_db($DBName, $link);
if (!$db_selected) { die ('Database access error : ' . mysql_error());}
$query = "INSERT INTO `QuestionsJA` (ID, QuestionText, AnswerText, Correct, Type, QGroup, Active) VALUES ('$QID','$QText', '$Ans', '$Cor', '$Type', '$QGroup', '$Active')";
mysql_query($query) or die('Error, Feedback insert into database failed')
I can output the variables containing the text into the browser and it displays as it should, just seems to be the communication between php and mysql.
Please help, this is driving me nuts.
Thanks
James