|
|
|
เชื่อม Database ด้วย ODBC แต่ภาษาไทยเป็นภาษาต่างดาวค่ะ |
|
|
|
|
|
|
|
ลองดูค่า APPL_CODEPAGE กับ CONN_CODEPAGE ด้วย db2_client_info() ว่าเป็น 1208 หรือไม่
|
ประวัติการแก้ไข 2020-05-30 19:03:21
|
|
|
|
Date :
2020-05-30 19:03:01 |
By :
PhrayaDev |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
while ($rows = odbc_fetch_object($result)) {
echo bin2hex($rows->fieldname;
}
ตรวจสอบก่อนว่าข้อมูลมายังไง
|
|
|
|
|
Date :
2020-05-30 19:04:00 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองแปลงใน query โดยใช้ CCSID 1208 เช่น
Code (SQL)
SELECT CAST(NAME AS VARCHAR(255) CCSID 1208) FROM DB2ADMIN.XXXXXXXXXX
|
|
|
|
|
Date :
2020-05-30 23:10:26 |
By :
PhrayaDev |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองใหม่ ไม่ต้องเซท ภาษา ปล่อย ตาม default
Code (PHP)
while ($rows = odbc_fetch_object($result)) {
echo '<textarea>'.json_encode($rows).'</textarea>';
}
json_encode มันจะแปลง สิ่งที่แปลงไม่ได้เป็น unicode ถ้าแปลงได้ ก็จะเห็นเป็นภาษา
น่าจะเอา structure ของ table มาดูด้วยนะครับ
ปล. ถ้าไม่ได้จริงๆ ใช้ database cast ให้เป็น binary(hexa) แล้วมา convert ที่ main code อีกที
ส่วนใหญ่ผมจะแก้ด้วยวิธีนี้กรณีที่ไม่รู้ว่าตอนนำเข้าทำแบบไหน
|
ประวัติการแก้ไข 2020-05-31 07:26:28
|
|
|
|
Date :
2020-05-31 06:39:32 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|