|
|
|
ปัญหาแบบนี้แก้ไขยังไงครับครับ ผมเขียน PHP มา 1 ไฟล์ เพื่อเชื่อมต่อกับ db ครับ |
|
|
|
|
|
|
|
บันทึกไฟล์เป็น utf-8 ป่าวคับ
mysql_connect($dbserver,$dbuser,$dbpass) or die ("เชื่อมต่อฐานข้อมูลไม่ได้ครับสาดดดด...");
mysql_select_db($dbname);
mysql_db_query('SET NAMES "utf8"');
$sql = "INSERT INTO $tablename (trackid, customername, date, status) VALUES ('$trackid','$customername','$date','$status')";
$sqlquery=mysql_query($sql);
เป็น
Code (PHP)
<?php
if($trackid && $customername && $date && $status){
mysql_connect($dbserver,$dbuser,$dbpass) or die ("เชื่อมต่อฐานข้อมูลไม่ได้ครับสาดดดด...");
mysql_select_db($dbname);
mysql_db_query('SET NAMES utf8');
$sql = "INSERT INTO $tablename (trackid, customername, date, status) VALUES ('$trackid','$customername','$date','$status')";
$sqlquery=mysql_query($sql);
}
?>
สาดในกระทู้เชียว
|
|
|
|
|
Date :
2009-08-02 21:30:19 |
By :
pjgunner |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อ้าว มีคนตอบแล้วพอดี
|
|
|
|
|
Date :
2009-08-02 21:35:38 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คุณ vee คับ
utf8_general_ci กับ utf8_general_general ต่างกันยังไงเหรอคับ
|
|
|
|
|
Date :
2009-08-02 21:37:30 |
By :
pjgunner |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
สาดดด ซะเปียกกันหมด
|
|
|
|
|
Date :
2009-08-02 21:37:54 |
By :
plakrim |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลืมอีก
utf8_general_ci กับ utf8_unicode_ci ต่างกันยังไงคับ
|
|
|
|
|
Date :
2009-08-02 21:39:59 |
By :
pjgunner |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมเป็นเหมือนกันครับ แก้ไม่หายครับ ก่อนหน้านี้ใน db จะเป็นต่างดาวแต่ตอนพอ query ออกมาจะเป็นปกติ(ไทย)
แต่หลังจากได้อ่าน post ข้างบน แล้วก็ไปแก้ แต่กลายเป็นว่า ทั้งใน db และ ตอน query ออกมา เป็นต่างดาวทั้งคู่ครับ เซ็งเยย
ค่าของผมมีดังนี้ครับ
phpmyadmin collacation utf8_general_ci
ในตาราง table เป็น utf8_general_ci
ในหน้า เว็บเป็น <meta http-equiv="content-type" content="text/html; charset=utf-8" />
แต่ผมไม่มีบันทัดนี้ตอน connect db ครับ (เพราะก่อนหน้านี้ก็ไม่มีแต่ก็เห็นเป็นภาษาไทยอยู่ ตอน query)
mysql_db_query('SET NAMES utf8');
แต่หลังจากลองใส่แล้วก็ไม่หายครับ เซ็งมากตอนนี้ ช่วยทีครับ
|
|
|
|
|
Date :
2009-08-02 22:12:26 |
By :
cjmling |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?php
mysql_query("SET character_set_results=tis620");
mysql_query("SET character_set_client='tis620'");
mysql_query("SET character_set_connection='tis620'");
mysql_query("collation_connection = tis620_thai_ci");
mysql_query("collation_database = tis620_thai_ci");
mysql_query("collation_server = tis620_thai_ci");
?>
|
|
|
|
|
Date :
2009-08-02 22:56:47 |
By :
panyapol |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เอ่อ.. utf8_unicode_ci ต่างกับ utf8_general_ci ยังไงเหรอ...
ผมก็ไม่รู้เหมือนกันครับ
ไม่ได้กวนไม่ได้เล่นตัวแต่ไม่รู้จริงๆ
เห็นเค้าว่า utf8 มันใช้ไทยได้และได้หลายภาษาผมก็สนใจ
เลยลอง asp+mysql utf8 แต่ติดขัดเลยย้ายมา php+mysql utf8
ส่วนเรื่อง utf8_general_ci นั้นผมเห็นมันเป็นค่ามาตรฐานเดิมๆที่มาตอนติดตั้ง แล้วตัวอย่างสำเร็จรูปก็ใช้แบบนี้กัน ผมก็เลยเอามั่ง แค่นั้นเองครับ
ผมไม่รู้จริงๆ
|
|
|
|
|
Date :
2009-08-03 01:35:42 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แล้วของคุณ ru ดูไทยใน myadmin ได้ยังอะ?
ของคุณ ling ต้องเช็คให้แม่นๆด้วยนะครับว่า ทั้ง db ทั้ง table และ field เป็น utf8_general_ci หมด
จากนั้นใส่
mysql_query("SET NAMES 'utf8'");
mysql_query("SET character_set_results=utf8");
mysql_query("SET character_set_client=utf8");
mysql_query("SET character_set_connection=utf8");
หลังจากเปิดใช้ mysql ในตอนแรก
มันก็น่าจะได้นะครับ เพราะผมก็ใช้เท่านี้แหละ ได้ทุกภาษาเลยทั้ง export import ไม่มีเพี้ยน
|
|
|
|
|
Date :
2009-08-03 01:39:32 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อีกนิด
ที่ผมบอกว่าเข้าไปใน phpmyadmin หน้าแรกแล้วปรับ collation นั้น ตรงนี้นะครับ
ตรงขีดส้มๆ
ปรับให้ตรงกับตารางน่ะครับ และทั้งในตาราง ใน db ในช่องย่อยๆต่างๆควรเป็นเหมือนกันครับ
ซึ่งถ้าทำตามนี้ ผมยืนยันว่าดูได้รู้เรื่องแน่
แต่..
การกรอก insert จากเว็บเข้าไป ต้องยัดเข้าไปในแบบ charset utf-8 และ mysql charset ที่ผมเอามาแปะให้ดูนะครับ
ผมทำตามนี้แล้วได้ทุกภาษาเลย
ส่วนข้อมูลเก่าๆที่ insert เข้าไปก่อนหน้าแล้ว เป็นไปได้ว่าอาจจะอ่านไม่ออกเพราะเข้ารหัสคนละแบบกันมาก่อน
|
|
|
|
|
Date :
2009-08-03 01:48:00 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
รูปอีกหน่อยครับ
ขอโทษที่ต้องหลายโพสท์ติดๆ เพราะนึกได้ว่าโชว์ให้ชัดๆดีกว่าน่ะครับ
เผื่อจะได้เห็นว่าตรงไหนพลาดไป
ลองทำอย่างที่ผมแนะนำก็ได้ สร้าง db มาใหม่อันนึง ทำตารางอะไรๆพร้อม แล้ว insert ปิ๊ง
ไทยออกแน่นอน
|
|
|
|
|
Date :
2009-08-03 01:56:55 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|