การแก้ปัญหา การแสดงผล ภาษาไทย MySql เป็น ???? โดย อ. นัฐพงศ์ ส่งเนียม http://www.siam2dev.com xnattapong@hotmail.com
การแก้ปัญหา การแสดงผล ภาษาไทย MySql เป็น ???? สำหรับ MySql เวอร์ชั่น ตั้ง แต่ 4.1 ขึ้นมา เนื่องจาก ทาง MySql ได้เปลี่ยนรูปแบบ การ เก็บ ข้อมูล ที่ เป็นอักขระ ใหม่ จาก เวอร์ชั่นเดิม ทำให้ การเก็บและ แสดงผล ของ บางภาษา เช่น thai เป็น ??? เราสามารถ แสดง Character Set Support ได้ด้วย SHOW VARIABLES LIKE 'character%'; วิธี การ แก้คือ 1.กลับไปใช้ เวอร์ชั่น 4.0 หรือน้อย กว่า แนะนำให้ใช้ 4.0.27 2.ใช้ Character Set เป็น utf-8 3.เพิ่ม คำสั่งนี้ในขั้นตอนการติดต่อ ฐานข้อมูล $charset = "SET character_set_results=tis620"; mysql_query($charset) or die('Invalid query: ' . mysql_error());
ต.ย. โค้ด PHP <?php $host="localhost"; $un="root"; $pwd="123"; $myconn = mysql_connect($host,$un,$pwd); if($myconn) { $charset = "SET character_set_results=tis620"; mysql_query($charset) or die('Invalid query: ' . mysql_error()); $result = mysql_db_query("TestTh","select * from Test" ,$myconn); echo "name :: " . mysql_result($result,0,1) . "<br>"; echo "name :: " . mysql_result($result,1,1); } else { } ?>