แก้ปัญหา ภาษาไทย PHP กับ MySQL ด้วย tis-620
บ่อยครั้งที่มักเจอปัญหาเวลาใช้ PHP Query ข้อมูลภาษาไทยจาก MySQL แล้วกลายเป็น ????
วิธีแก้ไขคือให้ทำการ Set ค่า Collation ให้เป็น tis620_thai_ci
หรือจะเลือก Default ไว้ตั้งแต่ตอน create database เลยก็ได้เช่นกัน
เสร็จแล้วตอนที่ PHP connect MySQL Database ให้ทำการกำหนด Collation name ด้วยคำสั่งนี้
mysql_query("SET NAMES TIS620");
ตัวอย่างเช่น
<?
$username="test";
$password="test";
$database="test";
mysql_connect("localhost",$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
mysql_query("SET NAMES TIS620");
?>
กรณีนี้เราสามารถใช้ UTF8 แทน TIS620 ได้ด้วยวิธีเดียวกันครับ
ซึ่งหลังๆ ผมแนะนำให้เป็น UTF8 จะดีกว่านะ
วิธีแก้ไขคือให้ทำการ Set ค่า Collation ให้เป็น tis620_thai_ci
หรือจะเลือก Default ไว้ตั้งแต่ตอน create database เลยก็ได้เช่นกัน
เสร็จแล้วตอนที่ PHP connect MySQL Database ให้ทำการกำหนด Collation name ด้วยคำสั่งนี้
mysql_query("SET NAMES TIS620");
ตัวอย่างเช่น
<?
$username="test";
$password="test";
$database="test";
mysql_connect("localhost",$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
mysql_query("SET NAMES TIS620");
?>
กรณีนี้เราสามารถใช้ UTF8 แทน TIS620 ได้ด้วยวิธีเดียวกันครับ
ซึ่งหลังๆ ผมแนะนำให้เป็น UTF8 จะดีกว่านะ
ความคิดเห็น
แสดงความคิดเห็น