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