ปรึษาหน่อยคับ ผมติดปัญหา โพสข้อมูลลง DB บน server แล้วเป็น ?????

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



ทั้ง ๆ เวลาทำใน คอมเรามันไม่เป็น มันก็ปกติ ผมก็ใช้ 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 5 1,788


SET NAMES UTF8 ครับ



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


#1

คือเอาส่วนนี้ออกใช่ไหมคับ

mysql_query("set name utf8");

คราวนี้เอาออก เป็น ??????????? หมดเลย 
#2

พอเอา mysql_query("set character set utf8"); ออกก็เป็นเหมือนเดิม
#3

คุณคับ ลองทำดูแล้วคับ ตอนนี้ โพสเป้นภาษาไทยได้แล้ว แต่ ข้อมูลเก่า ที่ดึงมา มันเป็น ????? หมดเลย ต้องแก้ตรงใหนครับ
#4

55++



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



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

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

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

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



tool ที่ใช้งานผมก็เคยมีนะ ลองหาดูบนเว็บ UTF-8
#5
ความคิดเห็น
ไฟล์อัปโหลด ชนิด jpg, jpeg ขนาดไฟล์ไม่เกิน 1024
^