程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP顯示MySQL亂碼的相關解決技巧分享

PHP顯示MySQL亂碼的相關解決技巧分享

編輯:關於PHP編程

PHP顯示MySQL亂碼問題1. 用PHPmyAdmin操作MySQL數據庫漢字顯示正常 ,但用PHP網頁顯示MySQL數據時所有漢字都變成了?號。

症狀:用PHPmyAdmin輸入漢字正常,但當PHP網頁顯示MySQL數據時漢字就變成了?號,並且有多少個漢字就有多少個?號。很多學員都遇到了此問題,尤其是在安裝了最新版的Appserv後。為此許多學員放棄了PHP,改學ASP了。

原因:沒有在PHP網頁中用代碼告訴MySQL該以什麼字符集輸出漢字。

★ PHP顯示MySQL亂碼解決方法:這不是亂碼,只要在PHP網頁頭部加入以下一段代碼告訴MySQL以UTF8編碼輸出漢字即可

  1. < ? mysql_query("SET NAMES UTF8"); ?>   
  2. 你也可以在網頁中PHP代碼部分直接插入上述代碼片段(即去掉兩端< ??>號)。例如你用Dreamweaver連接數據庫,那麼可以在頭部的連接代碼  
  3. < ?php require_once('Connections/connmessage.php'); ?>中加入該代碼使其變成  
  4. < ?  
  5. php require_once('Connections/connmessage.php');   
  6. mysql_query("SET NAMES UTF8");   
  7. ?> 

注意:如果你的網頁編碼是gb2312,那就是 SET NAMES GB2312。但編輯員強烈推薦網頁編碼、MySQL數據表字符集、PHPmyAdmin都統一使用UTF8。原因請見本站PHP教程第一章第2節。

PHP顯示MySQL亂碼問題2. 用PHPmyAdmin輸入數據時發生錯誤,不讓輸入或出現亂碼

★ PHP顯示MySQL亂碼解決方法:這是設置問題。請安裝最新版PHPmyAdmin或Appserv,打開PHPmyAdmin,MySQL 字符集: UTF-8 Unicode (utf8); MySQL 連接校對應該為utf8_unicode_ci;創建新的數據庫時整理一欄請也選成utf8_unicode_ci。網頁字符集也最好選用utf8。utf8是國際標准編碼,是趨勢。怎樣更改網頁編碼請看本站PHP教程第一章第2節。

PHP顯示MySQL亂碼問題3. 在本機開發好的MySQL數據表,在本機測試一切正常,但用網站空間商提供的PHPmyAdmin上傳時卻出現問題,上傳失敗。尤其是使用國外PHP空間。

★ PHP顯示MySQL亂碼解決方法:首先查看網站空間商提供的PHPmyAdmin字符集設定,確定自己所建數據表與空間是同一編碼。在國外MySQL是不支持gb2312的,甚至最新版的Appserv也不支持gb2312。如果是因為編碼不統一,可以重建數據表,當然是用國際標准的UTF8。


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved