|
|
|
ขอคำแนะนำ PHP ORACLE ดึงข้อมูลแล้วเป็นภาษา -> ³Ñ°ÇØ²Ô |
|
|
|
|
|
|
|
เนื่องจากต้องทำ project โดยเขียน php ต่อฐานข้อมูล Oracle
โดยมีเครื่อง db server OS เป็น centos 5 ที่ลง oracle 1 เครื่อง
เครื่องให้บริการ web server เป็น centos 6 อีก 1 เครื่อง
ใช้ oci8 ในการconnect oracle
ก่อนการทดลองใช้ php ดึงข้อมูลจาก oracle
ผมได้ทดลองดึงข้อมูลจาก oracle โดยใช้ sqlplus ในเครื่อง webserver แล้วก็แสดงผลลัพธ์เป็นภาษาไทย
จึงจัดการดึงข้อมูลผ่าน php บ้าง แต่กลายเป็นภาษาต่างดาว ³Ñ°ÇزÔ
ท่านใดพอจะแนะนำวิธีแก้ไขให้ผมได้บ้างครับ
สิ่งที่ทำแล้ว
** ผม connect oracle db ได้ปกติ**
** ทดลองใช้ putenv("NLS_LANG=AMERICAN_AMERICA.TH8TISASCII"); แล้วก็ไม่ได้
** ทดลองเปลี่ยน Charset ใน meta tab แล้วทั้ง utf-8, tis-620, windows-874 ก็ไม่ได้
** ใช้ oci_connect("user", "pass", "192.168.xx.xx/xxxx",'TH8TISASCII'); ก็ไม่ได้
** เปลี่ยน อักขระใน browser แล้วก็ไม่ได้
Code (PHP)
<html>
<head>
<title>TEST การเชื่อมต่อฐานข้อมูล Oracle ด้วย PHP</title>
<!--Meta http-equiv="Content-Type" content="text/html; charset=windows-874"-->
<!--meta http-equiv="Content-Type" content="text/html; charset=tis-620"-->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<?php
//header('content-type: text/html; charset=UTF-8');
ini_set ('display_errors', '1');
error_reporting(E_ALL);
echo "ก่อนการต่อฐานข้อมูล <br>";
//putenv("ORACLE_SID=xxxx");
//putenv("ORACLE_HOME=/usr/lib/oracle/11.2/client64/lib");
//putenv("NLS_LANG=AMERICAN_AMERICA.TH8TISASCII");
$conn = oci_connect("user", "pass", "192.168.xxx.xxx/xxxx", "TH8TISASCII");
echo "หลังการต่อฐานข้อมูล <br><br>";
if (!$conn) {
$e = oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
$stid = oci_parse($conn, 'SELECT no, nme FROM CUSTOM where no=1014713');
oci_execute($stid);
echo "<table border='0'>\n";
while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) {
echo "<tr>\n";
foreach ($row as $item) {
echo " <td>" . ($item !== null ? htmlentities($item, ENT_QUOTES) : "") . "</td>\n";
}
echo "</tr>\n";
}
echo "</table>\n";
echo "<br>หลังการแสดงผลข้อมูล <br>";
oci_close($conn);
?>
</body>
</html>
Tag : PHP, Oracle
|
ประวัติการแก้ไข 2016-03-15 13:59:20 2016-03-15 14:04:02 2016-03-16 13:42:14
|
|
|
|
|
Date :
2016-03-15 13:48:42 |
By :
Jimme |
View :
4170 |
Reply :
7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่ทราบว่าตอนนี้เจ้าของกระทู้แก้ปัญหาแสดงภาษาไทย ได้หรือยังครับ ถ้าได้แล้วช่วยเฉลยคำตอบในกระทู้ให้หน่อยครับ เพราะผมก็ยังติดปัญหาตรงนี้เหมือนกันครับ
ขอบคุณครับ
|
|
|
|
|
Date :
2021-06-24 09:15:44 |
By :
stanly |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ทำไว้ยังไง เอาโค๊ดมาลงไว้ด้วยครับ
แสดงโค๊ด กำหนดภาษาทั้ง ฝั่ง server กับ client ไว้ด้วยนะครับ มันเกี่ยวพันกัน
|
|
|
|
|
Date :
2021-06-24 12:36:30 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|