根據(jù)我的經驗php與mysql中出現(xiàn)亂碼一般都是文檔編碼的問題如 gbk,uft8,gb2312等與頁面編碼不一致.
解決1:php.ini沒有extension=php_mysql.dll
碰到這個問題后一般打開phpmyadmin就會出現(xiàn)亂碼錯誤,我們把php里面的libmysql.dll復制到c:\windows\system32或者c:\winnt\system32,然后重新啟動電腦就行
解決2:下面是我的修改過程:
打開 phpMyAdmin 根目錄中 libraries/select_lang.lib.php 文件;找到:'zh-gb2312' => array('zh|chinese simplified', 'chinese_simplified-gb2312', 'zh', '中文'),將其改為:'zh-gb2312-utf-8' => array('zh|chinese simplified-UTF8', 'chinese_simplified-gb2312', 'zh', '中文'),再找到:'gb2312' => 'gb2312',將其改為:'gb2312' => 'latin1',保存文件退出。
然后從瀏覽器打開 phpMyAdmin ,在首頁選擇 Language 為:中文 -Chinese simplified-UTF8,然后打開數(shù)據(jù)表看看里面的中文是不是已經可以正常顯示了:)
解決三:Mysql中的表默認是使用latin1編碼的,但內容如果是通過mysql命令等進行添加操作,一般都是gb2312編碼插入的,直接在phpmyadmin上 使用語言:中文 - Chinese simplified 下查看是亂碼
一、打開 libraries/select_lang.lib.php,查找 $available_languages 數(shù)組,在其最后添加一項數(shù)據(jù):
Php代碼
二、再搜索 $mysql_charset_map 找到這個數(shù)組,將其中的一項值 'gb2312' => 'gb2312' 改成 'gb2312' => 'latin1'。
三、重新打開phpmyadmin。語言選擇 中文 - Chinese simplified latin1,這時再打開latin1編碼的表,就可以看到亂碼已經不在了.