《Mysql應(yīng)用服務(wù)器數(shù)據(jù)庫編碼格式問題解決方案》要點(diǎn):
本文介紹了Mysql應(yīng)用服務(wù)器數(shù)據(jù)庫編碼格式問題解決方案,希望對(duì)您有用。如果有疑問,可以聯(lián)系我們。
服務(wù)器數(shù)據(jù)庫編碼格式問題MYSQL必讀
最近做項(xiàng)目在部署到阿里云服務(wù)器上之后出現(xiàn)了兩個(gè)問題:MYSQL必讀
1、亂碼問題.MYSQL必讀
2、ajax的php處理頁面里面利用json_encode()函數(shù)返回json數(shù)據(jù),則數(shù)據(jù)庫返回的數(shù)據(jù)只能是UTF8,如果是gbk則json也無法返回.MYSQL必讀
發(fā)現(xiàn)是數(shù)據(jù)庫編碼格式問題,網(wǎng)站使用的編碼格式為UTF8,數(shù)據(jù)庫的編碼格式調(diào)為了UTF8,但是character_set_server的值還是gbk.MYSQL必讀
查看數(shù)據(jù)庫編碼:MYSQL必讀
在mysql命令行里面輸入:show variables like 'character%';MYSQL必讀
MYSQL必讀
所以還是有亂碼存在.MYSQL必讀
于是從網(wǎng)上找了解決辦法:MYSQL必讀
在mysql命令行輸入:set character_set_server=utf8;MYSQL必讀
MYSQL必讀
OK修改成功!返回?cái)?shù)據(jù)也正常,但是當(dāng)關(guān)閉數(shù)據(jù)庫服務(wù),重新啟動(dòng),發(fā)現(xiàn)set character_set_server又變回了gbk.MYSQL必讀
所以這個(gè)辦法只能暫時(shí)性的解決.MYSQL必讀
最終找到了一個(gè)能用的不是特別好的解決辦法是在執(zhí)行SQL語句之前,先執(zhí)行該SQL語句即可:MYSQL必讀
$conn->query('SET character_set_client = utf8;'); $conn->query('SET character_set_results = utf8;'); $conn->query('SET character_set_connection = utf8;');
這種解決辦法個(gè)人感覺不是很好,每次執(zhí)行的次數(shù)太多,如果能修改服務(wù)器數(shù)據(jù)庫的編碼格式最好.MYSQL必讀
感謝閱讀,希望能贊助到大家,謝謝大家對(duì)本站的支持!MYSQL必讀
維易PHP培訓(xùn)學(xué)院每天發(fā)布《Mysql應(yīng)用服務(wù)器數(shù)據(jù)庫編碼格式問題解決方案》等實(shí)戰(zhàn)技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養(yǎng)人才。
轉(zhuǎn)載請(qǐng)注明本頁網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/9837.html