ปัญหา Share Content บน Facebook แล้วเป็นภาษาต่างดาว

พอดี ลองทำเว็บไซต์ แล้วทดสอบ share content ขึ้นไปบน facebook แล้วปรากฎว่า กลายเป็นภาษาต่างดาว (อับราฮัม ยึกยือ)

เลยเช็คดูหลายอย่าง ทั้ง collation ของ database ก็เป็น UTF8 , ข้อมูลที่อยู่ในฐานข้อมูล ก็เป็นภาษาไทยปกติ , charset บน html ก็ตั้งเป็น tis-620 (ก็ไม่ได้) เป็น utf-8 (ก็ไม่ได้) , ซ้ำร้าย ดันมีผลเกิดขึ้นคือ design หน้าเว็บเปลี่ยน คือ มันจะ ร่นลงมาจากด้านบน เหมือนกับว่า มีอักขระอะไรอยู่ก่อน content น่ะ.. แต่เช็คหลายอย่างแล้วก็ไม่มี..

สุดท้าย ลองเช็คอีกรอบ ปรากฎว่า ถ้าเราจะทำให้มันเป็น utf8 ก็ต้องทำไปทั้งหมดเลย นั่นก็คือ

  1. <meta http-equiv=’Content-Type’ content=’text/html; charset=utf-8′ />
  2. ตอนที่ connect database ก็ต้อง SET NAMES utf8 ด้วย
  3. แล้วใน database ก็ต้อง collation เป็น UTF8 ไปด้วย
  4. ส่วนสุดท้ายที่สำคัญมากก็คือ เวลาเซฟไฟล์แล้ว ดูด้วยว่า Encoding ของไฟล์เป็น UTF8 ด้วย เพราะปกติ มันจะเป็น ANSI