php 索取 mysql 資料問題

2007-01-21 5:54 pm
我好似普通咁用php 索取mysql 資料
過程無問題...但係中文出左尼變左"???" 但係英文同符號又正常show 到出尼喎
點解呢?

希望真係有人可以答到我...

回答 (2)

2007-01-24 4:38 am
✔ 最佳答案
多數原因係 client 同 server 既character set 唔對既問題。你之前放資料入去時用乜 character set? utf8 定 big5?

如果utf8, 你可以每次 connect mysql 之後, 設定返個 character set, 即是:
$link = mysql_connect($host,$user,$passwd) or die (”Fail”);
$db = mysql_select_db($DBname, $link) or die (”Fail”);
// 在 connect 後加入以下一行
mysql_query(”SET NAMES ‘utf8‘”, $link);

當然次次咁做都幾煩,如果你有 d 先前裝好既php, 要改重煩。另一解決方法就係在 my.cnf (可能在 /etc/my.cnf 或者 /etc/mysql/my.cnf , Windoze 則在 c:\winnt\my.ini ) 入手, 在 [mysqld] 章節加入:
[mysqld]
default-character-set=utf8
再在 [client] 章節加入:
[client]
default-character-set=utf8
重新啟動 mysql 就應該 ok 了,不用每次都 set names utf8;
2007-01-21 7:02 pm
這裡有兩個可能
1 你有無將 mysql database 設定為支援 unicode?
2 php 程式都底把什麼 encoding 的 string 輸入 database?一般 php 都用係 web based application,那麼你的 webpage encoding 又係乜?

你若能檢查並回答這兩大問題,就可以解答你本身的問題。


收錄日期: 2021-04-18 20:37:21
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20070121000051KK00957

檢視 Wayback Machine 備份