按以下步驟檢查處理。
創新互聯公司主營沙灣網站建設的網絡公司,主營網站建設方案,成都app軟件開發,沙灣h5小程序定制開發搭建,沙灣網站營銷推廣歡迎沙灣等地區企業咨詢
(1)HTML編碼指定是否正確?檢查head段中是否包含以下
meta
http-equiv="Content-type"
content="text/html;
charset=utf-8"
/
(2)檢查HTML文件本身的編碼有無問題。
(3)查詢數據庫之前設置編碼。
$sql
=
"set
names
utf8";
mysql_query($sql,$local_conn);
(4)檢查數據庫編碼及數據表及字段編碼是否均為UTF8。注意,數據庫編碼及表編碼及字段編碼不是一個概念。
用phpmyadmin添加mysql數據庫,然后用php操作數據庫出現亂碼的解決辦法:
1:確認phpmyadmin用的mysql字符集為utf-8
unicode(utf8);mysql連接校對為utf8_general_ci,language為中文-chinese
simplified
2:確認每個數據表的“整理為”utf8_general_ci;
3:在php連接mysql數據庫后加個語句來指定數據庫的字符集,
例如:$conn=mysql_connect("localhost","root","你的密碼");
//連接數據庫
mysql_query("set
name
'utf8'");
解決方法:
網頁文件head設置編碼meta http-equiv=”Content-Type” content=”text/html;
charset=utf-8″
/
2.PHP頁面在保存的時候使用utf-8編碼保存,可以用記事本或convertz802轉換文件
3.在MYSQL中新建數據庫的時候數據庫
選擇UTF-8編碼既字符集 設定為 utf-8_unicode_ci(Unicode (多語言), 不區分大小寫),
庫里面 表table的 整理 設置為
utf-8_general_ci
表里面的每個字段的 整理 都設置為
utf-8_general_ci
4.在PHP連接數據庫的時候,也就是mysql_connect()之后加入如下代碼:
//設置數據的字符集utf-8
mysql_query("set names 'utf8' ");
mysql_query("set character_set_client=utf8");
mysql_query("set character_set_results=utf8");
注意是utf8,不是utf-8
展開快訊
登錄
首頁
專欄
問答
沙龍
快訊
團隊主頁
開發者手冊
智能鈦AI
在線學習中心
TVP
返回騰訊云官網
徹底解決MySQL中文亂碼
mysql是我們項目中非常常用的數據型數據庫。但是因為我們需要在數據庫保存中文字符,所以經常遇到數據庫亂碼情況。下面就來介紹一下如何徹底解決數據庫中文亂碼情況。
1、中文亂碼
1.1、中文亂碼
無法插入中文字符:
1.2、查看表字符編碼
我們可以看到表的默認字符集是latin1.
所以我們在創建表的時候就需要指定表的字符集:
這樣在Linux里面可以訪問并且可以插入與訪問這個表了。
1.3、數據庫與操作系統編碼
雖然在服務器端可以顯示中文正常,但是在客戶端可能會顯示亂碼。因為我們的服務器是UTF8。
而且數據庫的編碼也存在問題。
這里我們可以看character_sert_database與character_set_server的字符集都是latin1.那么在mysql數據庫中,server,database,table的字符集都默認是latin1.下面我們就來看看如何解決mysql亂碼情況。
2、mysql設置變量的范圍
2.1、session范圍
查看數據庫編碼:
修改字符編碼:
我們可以看到字符集已經修改成都是utf8了。但是這里有一個問題,那就是我們重新打開一個命令窗口然后查看數據編碼就會出現下面的畫面:
這個可能是你在安裝環境的時候出現了問題,在安裝mysql的時候,數據庫默認的不是gb2312,是西歐字符,建議你重新安裝數據庫,或是使用wampsever集成安裝環境,默認數據庫是utf8的,只要你建的數據庫整理為utf8
網頁文件也保存為utf8的
(不要bom頭的那種)以后寫php就很少出現問題啦。要是在php文件的最上面一行再加上這么一句代碼,?php
header("Content-Type:text/html;
charset=utf-8");?,那出現問題的幾率就更小了。
亂碼一直是困擾PHP初學者的一個非常大的問題,現在總結下造成亂碼的原因及解決方法:
一、HTML頁面編碼:meta http-equiv=content-type content=text/html; charset=utf-8 這里的編碼要和數據庫編碼,及連接數據庫編碼;
二、文件在存儲編碼:比如文件inde.php,改變其存儲編碼為所需編碼。只需用EditPlus等文本編輯軟件 文件另存為,在編碼中選擇正確的編碼(這點很多人都會忽略);
三、數據庫編碼:比如用的是phpmyadmin 選擇數據庫后,選擇操作選項。下面有一個整理,這里面也要設置成統一的編碼;
四、表編碼:操作和第三點類似。這里就不重復了;
五、字段編碼:在建表的建字段的時候,有個整理。如果內容有漢字,就一定要改成統一的編碼;
六、連接數據庫時mysql_select_db()后面,要加一句 mysql_query( set names utf8 );
七、 (剛遇到的)本地測試成功后的網站,傳到網上去,會有亂碼。可能會是在本地導出數據時沒有選擇正確的編碼,所以才會在導入到web上后有亂碼問題。
當前名稱:php數據庫亂碼處理 php網頁顯示亂碼
文章URL:http://m.newbst.com/article12/hjhcgc.html
成都網站建設公司_創新互聯,為您提供標簽優化、面包屑導航、動態網站、網站設計、網站排名、網頁設計公司
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯