PHP ฐานข้อมูล Mysql กับภาษาไทย

ปัญหาที่นักพัฒนา PHP กับ Mysql มักเจอก็คือเรื่องของภาษาไทยไม่แสดงผลอย่างที่ควรเป็น แสดงเป็น ??? บ้าง แสดงเป็นภาษาต่างดาวบ้าง สาเหตุก็มาจากการ Encode ที่ไม่ตรงกันนั่นเอง วิธีการแก้ปัญหาง่าย ๆ เลยก็ต้องจัดการสองส่วนหลัก คือ

1. ส่วนของฐานข้อมูล ให้กำหนด collation = utf8_general_ci

2. ส่วนของหน้าเพจ ให้กำหนดส่วนหัวของเพจเป็น <meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″>

และส่วนของการเชื่อมต่อฐานข้อมูลให้กำหนดเป็น

php; gutter: true">$server = "localhost";
$username = "root";
$password = "***" ;
$database_name = "mytest";
$link_identifier = mysql_connect($server, $username, $password);
mysql_selectdb($database_name, $link_identifier);
mysql_query("SET NAMES 'UTF8'");
mysql_query("SET character_set_results='UTF8'");

 

แค่นี้ปัญหาเรื่องภาษาไทยใน PHP & MySql ก็ไม่เกิดแล้วครับ