Tags:

ตอนนี้กำลังศึกษา Ajax อยู่ครับ พอดีตอนที่ดึง ข้อความมาแสดงใน dropdown เมนูมันขึ้นเป็นภาษาต่างดาว พอมีใครแนะนำได้บ้างไหมครับ

ขอบคุณครับ

Get latest news from Blognone
By: lew
FounderJusci's WriterMEconomicsAndroid
on 29 May 2006 - 02:32 #7093
lew's picture

เจอบ่อยๆ ครับ ไม่ใช่แค่กับ AJAX แต่กับ Javascript ทั้งหมดน่ะครับ

หลักๆ เลยที่เป็นกันบ่อยๆ ถ้าไม่ใช่ฝั่ง server-side ก็จะเป็นตรงฟังก์ชั่น encode/decode ครับ

วิธีแก้ที่ง่ายที่สุดคือเปลี่ยนฟังก์ชั่นพวกนี้ให้กลายเป็น encodeURIComponent/decodeURIComponent ก็น่าจะใช้ได้ทันที ถ้าไม่ได้ไปเล่นแผลงๆ อย่างอื่น


lewcpe.com, @wasonliw

By: ipats
ContributorNOOBIn Love
on 29 May 2006 - 13:39 #7103

วิธีที่ผมแก้ง่ายๆ คือ ใช้ UTF-8 ทั้งหมดอ่ะครับ ทั้งตัวไฟล์ ดาต้าเบส ข้อมูลที่ส่งไปกลับ ฯลฯ

ปล. ตอนนี้ผมใช้ sajax อ่ะครับ เนื่องจากขี้เกียจเขียนส่วนจัดการเอง


iPAtS

By: lew
FounderJusci's WriterMEconomicsAndroid
on 29 May 2006 - 14:05 #7106
lew's picture

ipats - ฟังก์ชั่น encode/decode มันไม่รับ utf8 น่ะครับ ต่อให้ใช้ utf8 ก็เดี๊ยงอยู่ดี


lewcpe.com, @wasonliw

By: Theink on 3 June 2006 - 23:33 #7263

Ok สุดท้าย ผมค้นพบวิธีแล้วอย่างที่ ipats บอกครับ "ทุกอย่างเป็น utf8" code php ที่เขียนก็ต้องเซฟเป็น utf8 ไม่ใช่ ansi meta Content-Type ก็ด้วย แน่นอนแม้แต่ database ครับ

By: softganz
AndroidUbuntu
on 23 October 2006 - 01:29 #10949
softganz's picture

อ่านเจอมาจากในพันทิพย์ เขาบอกว่าให้เอาโค้ดข้างล่าง ไปใส่ไว้บนหัวของโปรแกรมส่วนที่ AJAX เรียกมาแสดงผล

<?php header ("Content-Type: text/html; charset=tis-620"); ?>

ผมลองแล้ว ใช้ได้เลยครับ

By: bow_der_kleine
WriterAndroidUbuntu
on 23 October 2006 - 13:31 #10963
bow_der_kleine's picture

softganz : หากตัว html เป็น utf-8 ให้ใช้ <?php header ("Content-Type: text/html; charset=utf-8"); ?> ครับ

By: nistelbooy on 6 November 2006 - 17:10 #11597

www.2uproject.com ( PHP Ajax CMS Studio Learning)

ดูตัวอย่างได้ที่นี่ครับ

www.2uproject.com

By: Pop on 21 April 2007 - 23:14 #21252

แต่ใน Firefox ไม่มีปัญหาครับ

function ascii_unicode_thai($text_input) { $text_output = ""; for ($i=0;$i if (ord($text_input[$i])<=126) $text_output .= $text_input[$i]; else $text_output .= "&#".(ord($text_input[$i])-161+3585).";"; } return $text_output; }

echo แล้วได้เลยคับ

By: iake on 22 April 2007 - 08:35 #21255

เคยเจอปัญหานี้กับตัวเองเหมือนกันครับ เมื่อดึงข้อมูลมามันขึ้นเป็นกล่องสี่เหลี่ยม พอใช้ encodeURIComponent decodeURIComponent ก็หาย

--------- http://iake.blogspot.com

By: buachompoo on 29 May 2007 - 05:12 #23742

ใครเคยเจอเวลาใช้ UTF-8 แล้ว ตัว ภ. กลายเป็น กล่องสี่เหลี่ยม แค่เพียงตัวเดียวบ้างมั้ยคะ ส่วนตัวอักษรตัวอื่น ปกติทุกอย่าง

--------------------------------------------------- เนื้อเพลง คอร์ดเพลง ที่ Music Lyrics Chord ค่ะ