8

Oracle データベースからデータを取得する際に問題があります。utf-8でデータを取得するには? ブラウザにはエコー付きのシンボルが表示されますが、Oracle からのデータには ? 文字の代わりにマーク

    <head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"></meta>
</head>
<?php

 $tns2 = "(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = hostname)(PORT = 1521)) (CONNECT_DATA = (SID = sidname)))";
   if ($conn = oci_connect("user","pass", $tns2))
   {
       echo "YAY!";
       //oci_close($conn);
   }
   else
   {
       die("Nesiseka");
   }

$stid = oci_parse($conn, 'SELECT * rowname where rownum<=10');
oci_execute($stid);

oci_close($conn);

echo "<table border='1'>\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) : "&nbsp;") . "</td>\n";
    }
    echo "</tr>\n";
}
echo "</table>\n";
echo"įęėšųį";
?>
4

3 に答える 3

44

シンプルなソリューション。行に「AL32UTF8」を追加するだけで、if ($conn = oci_connect(username,pass, $tns2 , 'AL32UTF8'))すべてが機能するようになりました。ご協力ありがとう御座います

于 2013-11-18T06:57:17.103 に答える