คือ เวลาอัพไฟลขึ้นโฮสแล้ว พอเวลาโพสข้อมูลเป็นภาษาไทย ละกดบันทึกลงแล้ว กลับเป็น ??????????????? 



ทั้ง ๆ เวลาทำใน คอมเรามันไม่เป็น มันก็ปกติ ผมก็ใช้ utf8_general_ci นะคับ จะแก้ยังไงดีคับ



วานถามผู้รู้คับ ขอบคุณคับ 



ผมใช้ ฟังชั่นเชื่อมต่อ แบบนี้ไม่รู้ ถูกหรือป่าว





function connectdb($db_name="database",$user="username",$pwd="password"){


$this->database = $db_name;


$this->username = $user;


$this->password = $pwd;


$this->connect_db = mysql_connect ( $this->host, $this->username, $this->password ) or $this->_error();


//$this->connect_db = mysql_pconnect ( $this->host, $this->username, $this->password ) or $this->_error();


$this->db = mysql_select_db ( $this->database, $this->connect_db) or $this->_error();


mysql_query("set name utf8"); 


mysql_query("set character set utf8"); 


return true; 


}

 

กรกฎ วิริยะ 07 พ.ย. 2555 12:06


SET NAMES UTF8 ครับ



ส่วน set charset ไม่ต้องครับ ที่เหลือคือ ทุกอย่างต้องเป็น UTF-8 ทั้งหมดครับ ไม่ว่าจะเป็น DB, Script หรือ อื่นๆ


ExKaDo 07 พ.ย. 2555 14:43
คือเอาส่วนนี้ออกใช่ไหมคับ

mysql_query("set name utf8");

คราวนี้เอาออก เป็น ??????????? หมดเลย 
ExKaDo 07 พ.ย. 2555 14:45
พอเอา mysql_query("set character set utf8"); ออกก็เป็นเหมือนเดิม
ExKaDo 07 พ.ย. 2555 14:47
คุณคับ ลองทำดูแล้วคับ ตอนนี้ โพสเป้นภาษาไทยได้แล้ว แต่ ข้อมูลเก่า ที่ดึงมา มันเป็น ????? หมดเลย ต้องแก้ตรงใหนครับ
กรกฎ วิริยะ 07 พ.ย. 2555 16:34
55++



ถ้าไม่เยอะก็ ลบไปเถอะครับ แต่ถ้าต้องการเก็บไว้ อาจต้องทำหลายอย่าง หรือ อาตต้องทำเพียงอย่างเดียวคือ แปลงฐานข้อมูลเก่าให้เป็น UTF-8 ก่อน



ขั้นตอนการแปลง

1.export ออกมาก่อน โดยใช้ charset เดิม ที่สามารถอ่านและแสดงผลได้ ตามระบบเดิม

2.แปลงไฟล์ที่ export เป้น utf-8

3.นำไฟล์ที่เป็น UTF-8 กลับเข้าไปใส่ยังฐานข้อมูลใหม่ที่เป็น UTF-8



tool ที่ใช้งานผมก็เคยมีนะ ลองหาดูบนเว็บ [search]UTF-8[/search]