本文目錄一覽:
- 1、php中怎麼設置可以支持mysql里表的字段名是中文名稱
- 2、PHP mysql 如何將從數據中讀入的中文亂碼轉換成中文字符?
- 3、php讀取mysql中文數據出現亂碼的解決方法
- 4、php中mysql漢字內容字段長度的問題
php中怎麼設置可以支持mysql里表的字段名是中文名稱
不用設置,經測試字段名稱支持中文。
錯的可能是sql語句,或其他地方。
問問題的話 如果能提供詳細的報錯信息,和完整的代碼,相信會很快給出答案的
PHP mysql 如何將從數據中讀入的中文亂碼轉換成中文字符?
要解決亂碼首先需要知道出現亂碼的原因:
一、PHP+MySQL出現中文亂碼的原因。
1. MYSQL數據庫的編碼是utf8,與PHP網頁的編碼格式不一致,就會造成MYSQL中的中文亂碼。
2. 使用MYSQL中創建表、或者選擇字段時設置的類型不是utf8,而網頁編碼不是utf8,也可能造成MYSQL中文亂碼.
3. PHP頁面的字符集與數據庫的編碼不一致。
4. PHP連接MYSQL數據庫,操作是設定的語句指定的編碼和頁面編碼,PHP頁面編碼不一致。
5. 用戶提交的HTML頁面編碼,和顯示數據的頁面編碼不一致 ,就肯定會造成PHP頁面亂碼.
二、解決中文亂碼:
1. 網頁編碼設置。一般在HTML代碼中的文件頭html中加入屬性:
meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″
保證,網頁是”utf-8″編碼。
2. PHP代碼設置。在php代碼的開始部分加入以下代碼:
header(”Content-type: text/html;charset=utf-8″);
且要求保存的文件編碼方式是utf-8,這樣就保證了該文件也是utf-8編碼。
3. 數據庫中表的字段中存儲中文的部分,要設置為utf8_general_ci類型。
4.PHP在連接數據庫操作時,要設置操作的字段類型為utf8,設置方法如下:
mysql_connect(’localhost’,’user’,’password’);mysql_select_db(’db’);mysql_query(”set names utf8;”); //**設置字符集***
php讀取mysql中文數據出現亂碼的解決方法
1.PHP頁面語言本身的編碼類型不合適,這時候,你直接在腳本中寫的中文肯定是亂碼,不用說數據庫了
解決方法:選擇’UTF8’或者’gb2312’,這樣客戶瀏覽器會自動選擇並出現正確的中文顯示。注意:’UTF8’或者’gb2312’都可以正確顯示中文的。
2.數據庫MySQL中的編碼類型不正確。
解決方法:創建數據庫的時候,MySQL
字符集選擇’UTF8’,MySQL
連接校對選擇utf8_general_ci,這樣創建的數據庫用來存儲中文肯定沒有問題,
否則,你的中文首先在MySQL中就是亂碼,更不要期望它會給你在PHP頁面中顯示正確。
3.與平時的腳本編輯環境有關。比如,有些內容是自己用word寫的,有些是用記事本寫的,有些用editplus、ultraplus等文本編輯器。有時候就直接在DW中寫中文了,
解決方法:盡量用同一種編輯器。如果是拷貝來得既有的內容,建議用ultraplus中的編碼轉換功能把它轉換成utf8或者gb2312。
到底轉換成什麼類型並不重要,關鍵要求你的PHP
WEB應用程序中的編碼要一致就行。
4.編程訪問
MySQL時,建議添加一行代碼:mysql_query(“SET
NAMES
‘GBK'”);
php中mysql漢字內容字段長度的問題
varchar存儲規則:
4.0版本以下,varchar(20),指的是20字節,如果存放UTF8漢字時,只能存6個(每個漢字3字節)
5.0版本以上,varchar(20),指的是20字符,無論存放的是數字、字母還是UTF8漢字(每個漢字3字節),都可以存放20個,最大大小是65532字節
Mysql4中最大也不過是20個字節,但是Mysql5根據編碼不同,存儲大小也不同。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/246158.html