MySQL 客戶端版本: 5.0.51a
伺服器版本: 5.0.51b-community-nt-log
apache 2.5.10
請問小弟我已經在MYSQL裡面建立資料表格,表格跟資料的校對都用utf8_unicode_ci
不過在測試的時候,都跑出亂碼...我重灌在測試以後還是一樣。
拜託各位大大,指點我一下,是哪邊沒有設定好嗎????
A45C么 AE5C娉 B85C稞 C25C擺 A55C功 AF5C珮 B95C鈾 C35C黠 A65C吒 B05C豹 BA5C暝 C45C孀 A75C吭 B15C崤 BB5C蓋 C55C髏 A85C沔 B25C淚 BC5C墦 C65C躡 A95C坼 B35C許 BD5C穀 AA5C歿 B45C廄 BE5C閱 AB5C俞 B55C琵 BF5C璞 AC5C枯 B65C跚 C05C餐 AD5C苒 B75C愧 C15C縷
先看一下你的code:
<pre class="c" name="code">
<?php
$passed = $_COOKIE["passed"];
if ($passed != "TRUE")
{
header("location:index.htm");
exit();
}
?>
<HTML>
<HEAD>
<TITLE>會員管理</TITLE>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
</HEAD>
<BODY>
<P ALIGN="center"><IMG SRC="management.jpg"></P>
<P ALIGN="center">
<A HREF="modify.php">修改會員資料</A>
<A HREF="delete.php">刪除會員資料</A>
<A HREF="logout.php">登出網站</A>
</P>
</BODY>
</HTML>
既然你的內容是繁體中文(big5),為何會有:
<pre class="c" name="code">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
請把這一行改一改吧。
校對影響的主要是排序,其實跟資料怎麼存沒關係。就算你的資料是big5編碼,校對用utf-8也不會有影響,只要存入跟取出的校對一致,同時與table設定的一致,就不會有問題。
感恩阿...我今天寫了一天,卡在亂碼這邊!!!
改過BIG-5之後,亂碼變繁中了!!
不客氣,有幫到忙就好:)
補充:
http://www.jaceju.net/blog/?p=116
Jaceju大這一篇寫得非常完整,值得推薦喔,趕快去看一看。
如果你的網站沒有其他的服務,解決的方式為修改/etc/php.ini的設定值,在php.ini中預設為default_charset = "iso-8859-15",若確定站台僅供正體中文(繁體中文最正確的解釋應為正體中文)則可更改為default_charset = "big5"。
但若是機器上還有跑其他的服務需要用UTF-8的編碼,為使兩者不相沖,可以把default_charset的值給拿掉或設成default_charset = "off" 皆可,如此更改的話就可以在瀏覽UTF-8網站時以UTF-8的編碼顯示,而瀏覽其他站台時則以Big-5的編碼顯示!
但需注意的是必需在網頁的裡加注或,如此瀏覽器才會知道您要使用何種方式的編碼來呈現內文!