Posts Tagged ‘AJAX’

ปัญหาภาษาไทย TIS-620 กับ AJAX

Wednesday, December 23rd, 2009

พอดีเมื่อวานนี้มีเพื่อนถามมาทาง MSN ว่าเว็บมีปัญหาใช้ภาษาไทยกับ AJAX ไม่ได้ คือส่งภาษาไทยไปแล้ว อ่านไม่ออกใน MySQL
ส่วนตัวนั้นมีประสบการณ์เกี่ยวกับปัญหาภาษาไทยมาบ้าง ถึงจะไม่มาก แต่ก็พอจะมั่นใจได้ว่า AJAX ไม่น่ามีปัญหากับภาษาไทย แต่มันไม่ใช่กับกรณีนี้

มาดูกันที่ส่วนประกอบต่างๆกันก่อน

Web Page (TIS-620) + AJAX (TIS-620) <–> PHP(TIS-620) <–> MySQL (TIS-620)

ดูๆจากข้างต้นก็ไม่น่าจะมีปัญหาอะไร

อย่างแรกผมเอา FireBug จับ XHR ดูก่อนเลย เป็น HTTP Post และพบว่าอ่านไทยไม่ออกครับ ผมแปลกใจมากๆ ทั้งๆที่ Header บอกว่า charset เป็น TIS-620
ลองถาม Google ดูจึงพบว่า AJAX มีปัญหากับ TIS-620 จริงๆด้วย เพราะมันส่งเป็น UTF-8 (จริงๆมีวิธีเปลี่ยนแต่ค่อนข้างยุ่งยาก)

ดังนั้นภาพข้างบนจึงผิด จริงๆต้องเป็นแบบนี้

Web Page (TIS-620) + AJAX (UTF-8) <–> PHP(UTF-8) <–> MySQL (TIS-620)

และสิ่งที่เราต้องแก้ก็คือแปลง UTF-8 ให้เป็น TIS-620 ที่ Server Side Script ซึ่งในที่นี้คือ PHP โดยการเพิ่ม code นี้เพื่อแปลงข้อความก่อน save ลง MySQL

$msg= iconv(‘UTF-8′, ‘TIS-620′, $msg);

สรุป

- ปัญหานี้จะเกิดต่อเมื่อใช้ Post Method เพราะส่วน Body จะถูก Encode เป็น UTF-8 ส่วน Get ไม่มีปัญหาเพราะข้อความต่อท้ายไปกับ URL แทน

- ถ้าไม่มีความจำเป็นต้องใช้ TIS-620 จริงๆ ผมขอแนะนำเหมือนทุกครั้ง คือใช้ UTF-8 จะดีกว่า ใช้ได้กับหลายภาษา ไม่ใช่แค่ภาษาไทย และ open source script ส่วนใหญ่เขียนมา support UTF-8 อยู่แล้ว

AJAX อ่านว่าอะไร

Wednesday, July 9th, 2008

เลือกอ่านตาม link ด้านล่างเลยครับ

http://education.yahoo.com/reference/dictionary/entry/Ajax

http://www.ajax.in.th/forums/index.php?topic=282

http://www.merriam-webster.com/dictionary/ajax

ป.ล. Apache อ่านว่า “อะแพช’ชี” นะครับ

AJAX + JSON ด้วย script.aculo.us (Prototype) และ JSON-Lib

Wednesday, September 26th, 2007

คล้ายๆกลับบทความ สร้าง AJAX ด้วย Dojo และ JSON โดยคุณ We– แห่ง Java and Oracle Blog

แต่ผมนำมาเขียนด้วย script.aculo.us (Prototype) และ JSON-Lib แทน ด้วยเหตุผลที่ว่า
1. ใช้ script.aculo.us หรือ Prototype เพราะไม่เคยใช้กับ Java Project มาก่อน
2. ใช้ JSON-Lib เพราะมัน Powerfull กว่า Standard JSON Library ที่ json.org นั่นเอง

สำหรับพื้นฐาน AJAX คืออะไร JSON คืออะไร หาอ่านกันตามสะดวกนะครับ ผมขอไม่ Feed ให้มากขนาดนั้น ว่าแล้วก็ลุยกันเลยครับ

(more…)

AJAX Comparison Matrix

Friday, September 21st, 2007

ใช้ AJAX ด้วย Dojo แล้วก็ GWT มานานแล้วพอสมควร แต่ก็ยังรู้สึกว่ามันยังไม่ใช่ซะทีเดียว

(more…)