คุณเคยประสบปัญหาเช่นนี้หรือไม่สำหรับผู้ที่ใช้ ชุดคำสั่งภาษาแบบ tis620 แล้วมา run ภาษาไทย ใน host ที่เป็น utf-8
ปัญหานี้มีวิธีการแก้ปัญหาหลายๆ แบบกันไป แต่ไม่ใช่แบบไหนก็ได้นะครับเอาเป็นว่าถ้าไม่ได้แบบนั้นให้ เปลี่ยนเป็นแบบนี้ นะครับ
OK!!! เรามาดูวิธีแรกก่อนครับ เป็นวิธีที่ถือว่าง่ายที่สุด
เวลา Connect Database ให้เพิ่มในส่วนของ mysql_db_query($dbname,"SET NAMES tis620");
เพิ่มเข้าไปทุกครั้งมีมีการ Connect
ทำการเพิ่ม SET NAMES tis620 ไปแล้วแต่ phpMyAdmin เวลา Dump ข้อมูลมันก็ยังเป็น ????? อยู่อีก
ในกรณีนี้ ให้ทำการ เปลี่ยนค่า mysql กันเลยนะครับ
1. ทำการ Exprot database ออกมาก่อน
>>>
>>>
จากนั้นเมื่อได้ database และเปิดมาจะเห็นว่าบรรทัดสุดท้าย ของแต่ละตารางจะเป็นแบบนี้นะครับ
นี่ก็จะมี 2 วิธีนะครับ
ถ้าเป็น Linux Hosting ให้ตัดบรรทัดนี้ทิ้งได้เลย
ถ้าเป็น Windows Hosting ตัดบรรทัดนี้ทิ้งและ เพิ่มคำสั่งนี้ เข้ามาแทน ( Linux Hosting อยากทำแบบนี้ก็ได้นะครับ)
ENGINE = MYISAM DEFAULT CHARSET = utf8 ;
แค่นี้ tis620 ของคุณก็สามารถที่จะ run ภาษาไทย บน hosting ที่เป็น utf-8 ได้แล้วครับ