我正在使用的網站是在波斯語,所有文本都顯示爲????? (問號)。 我將我的數據庫表格整理爲UTF8_general_ci,但仍顯示???存儲非英文字符,得到'?????' - MySQL字符集問題
我跑了下面的腳本來改變所有的表,但是這並沒有工作。
我想知道我做錯了
<?php
// your connection
mysql_connect("mysql.ord1-1.websitesettings.com","user_name","pass");
mysql_select_db("895923_masihiat");
// convert code
$res = mysql_query("SHOW TABLES");
while ($row = mysql_fetch_array($res))
{
foreach ($row as $key => $table)
{
mysql_query("ALTER TABLE " . $table . " CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci");
echo $key . " => " . $table . " CONVERTED<br />";
}
}
?>
如果你想知道你做錯了什麼:閱讀[絕對最小每個軟件開發人員,肯定必須知道Unicode和字符集(沒有藉口!)](http://www.joelonsoftware.com/文章/ Unicode.html)。然後意識到有很多事情要做:數據庫整理,表格整理,數據庫連接字符集('mysqli_set_charset($ con,「utf8」);'),網頁字符集(meta-tags和/或http頭文件)源文件編碼等。**每個**都需要正確才能正常工作。 – RobIII