亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

小結(jié)下MySQL中文亂碼,phpmyadmin亂碼,php亂碼 產(chǎn)生原因及其解決方法第3/3頁

 更新時間:2007年09月02日 22:07:53   作者:  


【在phpmyadmin創(chuàng)建數(shù)據(jù)庫,并指定字符集】


表類型根據(jù)自己需要選,這里選MyISAM(非事務(wù));
整理選擇 gbk_chinese_ci 也就是gbk字符集
gbk_bin 簡體中文, 二進制。gbk_chinese_ci 簡體中文, 不區(qū)分大小寫。

在剛才創(chuàng)建的數(shù)據(jù)庫插入數(shù)據(jù)庫



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


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


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


再插入一條數(shù)據(jù)???,這條已經(jīng)正常了

【解決php讀取數(shù)據(jù)庫亂碼】

仍以數(shù)據(jù)庫mysqlcode為例
復(fù)制代碼 代碼如下:

<?php
//php愛好者站教程 http://www.phpfans.net 
$conn = mysql_connect("localhost","root","");
mysql_query("set names 'gbk'");//這就是指定數(shù)據(jù)庫字符集,一般放在連接數(shù)據(jù)庫后面就系了
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">內(nèi)容</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 必須在連接數(shù)據(jù)庫之后,執(zhí)行sql語句之前!
一句話
你數(shù)據(jù)庫用什么編碼,在對數(shù)據(jù)庫操作之前就set names '你的編碼';

終于完了,如果對大家有用就頂下啦。不正確的地方也請指正

相關(guān)文章

最新評論