PHP讀取MySQL數(shù)據(jù)庫數(shù)據(jù)出現(xiàn)亂碼解決辦法
問題描述:
PHP網(wǎng)頁在讀寫MYSQL數(shù)據(jù)出現(xiàn)亂碼。
問題分析:
MYSQL數(shù)據(jù)庫涉及到編碼的地方包括:數(shù)據(jù)庫編碼、數(shù)據(jù)庫表的編碼、數(shù)據(jù)庫表字段的編碼、PHP輸出頁面的編碼,這些地方只要有一個(gè)地方編碼出現(xiàn)了問題,就會導(dǎo)致PHP讀取數(shù)據(jù)出錯(cuò)。宇塵網(wǎng)絡(luò)幫助中心域名知識|虛擬主機(jī)知識|VPS主機(jī)知識|服務(wù)器知識|網(wǎng)站建設(shè)知識|網(wǎng)絡(luò)推廣
解決步驟:
1、檢查mysql連接語句中必須包含下列語句。美國月付空間、月付美國空間、美國VPS、美國服務(wù)器租用
mysql_query(“SET NAMES ‘utf8′”);
mysql_query(“SET CHARACTER_SET_CLIENT=utf8″);
mysql_query(“SET CHARACTER_SET_RESULTS=utf8″);
實(shí)用代碼(建議:使用如下代碼時(shí)候不建議直接拷貝):
$host=””;
$user=””;
$pwd=””;
$dbname=””;
$link = mysql_connect($host, $user, $pwd)or die(“Could not connect: ” . mysql_error());
mysql_select_db($dbname, $link) or die (‘Can’t use wordpress : ‘ . mysql_error());
mysql_query(“SET NAMES ‘utf8′”);
mysql_query(“SET CHARACTER_SET_CLIENT=utf8″);
mysql_query(“SET CHARACTER_SET_RESULTS=utf8″);
2、檢查數(shù)據(jù)庫編碼、數(shù)據(jù)庫表編碼、數(shù)據(jù)庫字段編碼、頁面編碼是否一致。在這一項(xiàng)檢查中,需要仔細(xì)的一項(xiàng)一項(xiàng)的檢查。建議大家從大到小的順序的檢查,并借助MYSQL數(shù)據(jù)庫管理工具,在這里推薦。仿牌空間、香港月付空間、韓國月付空間、日本月付空間、荷蘭VPS、香港VPS
3、如果上述的檢查都沒有問題,則表明導(dǎo)致亂碼的原因很有可能是PHP編碼的問題;這時(shí)候就要檢查PHP文件的編碼,可將文件另存為選擇UTF-8編碼保存。
更多技術(shù)知識,更多網(wǎng)絡(luò)服務(wù),盡在宇塵網(wǎng)絡(luò)。我們的成長,離不開你們的支持,宇塵網(wǎng)絡(luò),歡迎您的訪問。