作者 主題: [問題]網頁出現部份中文亂碼  (閱讀 10359 次)

0 會員 與 1 訪客 正在閱讀本文。

TP chi

  • 可愛的小學生
  • *
  • 文章數: 12
    • 檢視個人資料
[問題]網頁出現部份中文亂碼
« 於: 2003-08-19 10:53 »
<html>
<head>
<meta http-equiv="content-type"="text/html; charset=big5">
<meta http-equiv="content-language" content="zh-tw">
</head>
<body>
 <?php    
    require("init2.inc");
    $sql = "select line_no ,line ,bpt ,ept from linelist";
    $result = pg_exec($dblink,$sql);
    $rows = pg_numrows($result) ;
     echo "<table border=1>";
    echo "<tr>";
     echo "<td>姓名</td><td>生日</td><td>住址</td>";
    echo "</tr>";
     for ($j=0 ; $j< $rows ; $j++) {
     echo "<tr>";
     $name  =pg_result($result,$j,0);
     $brith    =pg_result($result,$j,1);
     $addres =pg_result($result,$j,2);
         echo "<td>$name</td><td>$brith</td><td>$addres</td>";
     echo "</tr>";
     }
?>
</table>
</body>
</html>
select 出來時 姓名 生日 住址 表頭中文是亂碼其他則是正常
OS:rh8.0  ,   database:postgresql-7.x database的Encoding是unicode
請教各位大大

hoyo

  • 榮譽博士
  • 俺是博士!
  • *****
  • 文章數: 4046
  • 性別: 男
  • 有需要的時候,學習就不會分階段。
    • 檢視個人資料
    • 樂咖黑電腦學習網
[問題]網頁出現部份中文亂碼
« 回覆 #1 於: 2003-08-19 11:04 »
<html>
<head>
<meta http-equiv="content-type"="text/html; charset=big5">
<meta http-equiv="content-language" content="zh-tw">
</head>
<body>
<?php
require("init2.inc");
$sql = "select line_no ,line ,bpt ,ept from linelist";
$result = pg_exec($dblink,$sql);
$rows = pg_numrows($result) ;
?>

<table border=1>
  <tr>
     <td>姓名</td>
     <td>生日</td>
     <td>住址</td>
</tr>

<?php
for ($j=0 ; $j< $rows ; $j++) {
echo "<tr>";
$name =pg_result($result,$j,0);
$brith =pg_result($result,$j,1);
$addres =pg_result($result,$j,2);
echo "<td>$name</td><td>$brith</td><td>$addres</td>";
echo "</tr>";
}
?>
</table>
</body>
</html>

改成這樣子看看,如果有大量的 html 要再 php 裡出現的話,不妨先跳出來處理,這樣子看起來也比較不會那麼亂!
受人與魚,不如授人與漁
上海自來水來自海上;倫敦好奇人奇好敦倫

TP chi

  • 可愛的小學生
  • *
  • 文章數: 12
    • 檢視個人資料
[問題]網頁出現部份中文亂碼
« 回覆 #2 於: 2003-08-19 11:59 »
感謝hoyo大大的回應
已將html部份跳出php但問題依舊
是否與編碼有關,
php.ini  已設default_charset="BIG5"
是否有其他設定問題

hoyo

  • 榮譽博士
  • 俺是博士!
  • *****
  • 文章數: 4046
  • 性別: 男
  • 有需要的時候,學習就不會分階段。
    • 檢視個人資料
    • 樂咖黑電腦學習網
[問題]網頁出現部份中文亂碼
« 回覆 #3 於: 2003-08-19 14:16 »
其他的 php 網頁會這樣子嗎!?
如果是 php 網頁的話,header 要使用 php 的語法寫在最前面

<?php
header('Content-Type: text/html; charset=BIG5');
?>

再試試看,如果系統沒問題應該這樣子就可以了!
受人與魚,不如授人與漁
上海自來水來自海上;倫敦好奇人奇好敦倫

TP chi

  • 可愛的小學生
  • *
  • 文章數: 12
    • 檢視個人資料
[問題]網頁出現部份中文亂碼
« 回覆 #4 於: 2003-08-22 10:17 »
已加入 <?php
header('Content-Type: text/html; charset=BIG5');
?>
檔頭是正常顯示中文,但select data 變成亂碼
想不通是什麼原因
請各位大大幫幫忙謝謝!

hoyo

  • 榮譽博士
  • 俺是博士!
  • *****
  • 文章數: 4046
  • 性別: 男
  • 有需要的時候,學習就不會分階段。
    • 檢視個人資料
    • 樂咖黑電腦學習網
[問題]網頁出現部份中文亂碼
« 回覆 #5 於: 2003-08-22 10:47 »
有架設網站了嗎!?
如果有的話把你測試的網址 post 上來,實際看到網頁比較容易知道哪裡出問題。
受人與魚,不如授人與漁
上海自來水來自海上;倫敦好奇人奇好敦倫

TP chi

  • 可愛的小學生
  • *
  • 文章數: 12
    • 檢視個人資料
[問題]網頁出現部份中文亂碼
« 回覆 #6 於: 2003-08-22 13:00 »
抱歉這只是公司內部網站
加入
<?php
header('Content-Type: text/html; charset=BIG5');
?>
線號 路線 起站 終站
5151 ?冽
6401 璅寞?-?
2343 234
結果:
未加入
<?php
header('Content-Type: text/html; charset=BIG5');
?>
結果:
?u﹐1 ﹐??/td> °_¯﹐ 2?﹐
5151 木柵平溪野人谷 木柵 野人谷
6401 樹林-土城 樹林 土城工業區
2343 234
請各位大大幫幫忙謝謝!

duan

  • 榮譽博士
  • 活潑的大學生
  • ***
  • 文章數: 253
    • 檢視個人資料
[問題]網頁出現部份中文亂碼
« 回覆 #7 於: 2003-08-22 13:06 »
引述: "TP chi"

加入
<?php
header('Content-Type: text/html; charset=BIG5');
?>
線號 路線 起站 終站
5151 ?冽�撟單漯?�犖靚?/td> ?冽� ?�犖靚?/td>
6401 璅寞?-?�? 璅寞? ?�?撌交平?�
2343 234


client 的平台及 browser 是? :)
或許可以先用 mozilla + livehttpheader 或其它方式去抓送
出去的資料, 看是送出去時就亂碼, 還是其它原因.

語系的問題比較麻煩, 和 client , server 還有 browser 可能
都有關係, 需要小心 debug , 能夠看到傳送的 header 是比
較方便的. 弟在這方面經驗也不多, 只是提供一種方法,
也許會比較好 debug .  :)

hoyo

  • 榮譽博士
  • 俺是博士!
  • *****
  • 文章數: 4046
  • 性別: 男
  • 有需要的時候,學習就不會分階段。
    • 檢視個人資料
    • 樂咖黑電腦學習網
[問題]網頁出現部份中文亂碼
« 回覆 #8 於: 2003-08-22 13:13 »
看來你的網頁和資料庫抓出來的編碼不一樣喔!

如果你自己選擇 BIG5 編碼是兩者都可以正常顯示中文嗎!?還是說一樣只有一個能正常顯示!
受人與魚,不如授人與漁
上海自來水來自海上;倫敦好奇人奇好敦倫

TP chi

  • 可愛的小學生
  • *
  • 文章數: 12
    • 檢視個人資料
[問題]網頁出現部份中文亂碼
« 回覆 #9 於: 2003-08-25 08:47 »
如果在網頁選擇big5表頭中文正常

hoyo

  • 榮譽博士
  • 俺是博士!
  • *****
  • 文章數: 4046
  • 性別: 男
  • 有需要的時候,學習就不會分階段。
    • 檢視個人資料
    • 樂咖黑電腦學習網
[問題]網頁出現部份中文亂碼
« 回覆 #10 於: 2003-08-25 09:16 »
A~~~~~~~~~比較快速又懶惰的方法就是:

改回你原先將 html 包進 echo 的方式!

其實你如果已經在設定檔設定 big5,在網頁上另外設定編碼都是沒有用的設定,有興趣的話你可以搜尋之前討論過的一篇也是跟編碼有關的討論,使用編碼當作關鍵字找找看吧!
受人與魚,不如授人與漁
上海自來水來自海上;倫敦好奇人奇好敦倫