小結下MySQL中文亂碼,phpmyadmin亂碼,php亂碼 產生原因及其解決方法第3/3頁
更新時間:2007年09月02日 22:07:53 作者:
【在phpmyadmin創(chuàng)建數據庫,并指定字符集】

表類型根據自己需要選,這里選MyISAM(非事務);
整理選擇 gbk_chinese_ci 也就是gbk字符集
gbk_bin 簡體中文, 二進制。gbk_chinese_ci 簡體中文, 不區(qū)分大小寫。
在剛才創(chuàng)建的數據庫插入數據庫

再瀏覽時發(fā)現是亂碼

為什么呢?是因為數據庫為gbk字符集,而我們操作時沒有指定為gbk
回到數據庫首頁

可以看到 mysql 連接校對默認的latin1_bin。我們將其改為gbk_chinese_ci

再插入一條數據??矗@條已經正常了

【解決php讀取數據庫亂碼】
仍以數據庫mysqlcode為例
復制代碼 代碼如下:
<?php
//php愛好者站教程 http://www.phpfans.net
$conn = mysql_connect("localhost","root","");
mysql_query("set names 'gbk'");//這就是指定數據庫字符集,一般放在連接數據庫后面就系了
mysql_select_db("test");
$sql = "select * from mysqlcode";
$result = mysql_query($sql,$conn);
?>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>mysql 字符編碼</title>
</head>
<body>
<table width="300" height="32" border="1" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="71" align="center">id</td>
<td width="229" align="center">內容</td>
</tr>
<?php while($row = mysql_fetch_assoc($result)){
echo "
<tr>
<td align=\"center\">".$row['id']."</td>
<td>".$row['content']."</td>
</tr>";
}?>
</table>
</body>
</html>
<?php mysql_free_result($result);?>
如果我們將mysql_query("set names 'gbk'");注釋掉,肯定時亂碼

加上那句又正常了

注意: set names 必須在連接數據庫之后,執(zhí)行sql語句之前!
一句話
你數據庫用什么編碼,在對數據庫操作之前就set names '你的編碼';
終于完了,如果對大家有用就頂下啦。不正確的地方也請指正
您可能感興趣的文章:
- MySQL中文亂碼問題解決方案
- 解決Mysql5.7中文亂碼的問題
- 數據庫 MySQL中文亂碼解決辦法總結
- Mysql 下中文亂碼的問題解決方法總結
- Mac Mysql數據庫中文亂碼問題解決
- Mysql徹底解決中文亂碼問題的方案(Illegal mix of collations for operation)
- MySql安裝步驟圖文教程及中文亂碼的解決方案
- MYSQL數據庫使用UTF-8中文編碼亂碼的解決辦法
- Mysql中文亂碼問題的最佳解決方法
- 解決mysql5中文亂碼問題的方法
- MySQL字符集 GBK、GB2312、UTF8區(qū)別 解決MYSQL中文亂碼問題
- mysql 中文亂碼 解決方法集錦
- MySQL中文亂碼問題的解決
- 徹底解決MySQL使用中文亂碼的方法
相關文章
淺析PHP原理之變量(Variables inside PHP)
我前面的文章中已經講過,PHP的執(zhí)行是通過Zend engine(ZE, Zend引擎), ZE是用C編寫的,大家都知道C是一個強類型語言,也就是說,在C中所有的變量在它被聲明到最終銷毀,都只能保存一種類型的數據。 那么PHP是如何在ZE的基礎上實現弱類型的呢2013-08-08phpmyadmin配置文件現在需要絕密的短密碼(blowfish_secret)的2種解決方法
安裝完成phpmyadmin之后,再在瀏覽器里輸入:http://localhost/phpmyadmin這時能看到phpmyadmin的管理頁面,不過會提示:“配置文件現在需要絕密的短密碼(blowfish_secret)。”2014-05-05