本文目錄一覽:
php連MySQL數據庫編碼問題
也許是數據庫的問題,我也遇到過,我用的是wampserver,界面的工具,直接點鼠標就可能建成mysql數據庫,建成後導入數據,查詢數據庫返回面而的是亂碼,我遇到的情況是這樣的:
1、建庫用gbk,如圖。
2、導入表及數據時,默認是utf,此處要改成gbk就不是亂碼了,如第圖底頁面,如果是默認的或是其它的字符集,能導入成功但是亂碼。另外直接把sql粘貼到sql窗口,也不是亂碼。
希望能幫到你,呵呵~
php+mysql編碼問題
數據庫表建立的時候,字符字段有字符集,關鍵看是選擇的GB2321、UTF8等。以這個為基礎,以下的幾個地方都保持統一,那麼數據才能插入和查詢,而且不會有亂碼:
一、PHP文件的編碼,PHP實際上是文本文件,保存的時候是可以選擇編碼的,你用記事本打開選擇另存為就可以看見,如果是ANSI就和前面數據庫的GB2312、GBK兼容,UTF8就和UTF8一致。
二、PHP運行後瀏覽器頁面的編碼,這個也必須要一致。
三、PHP程序連接數據庫之後,要運行下面的語句設置接口編碼:輸入mysql_query(‘set names gb2312’);
第三條應該就是你要的答案了。
我是這麼寫的
?php
$link=mysql_connectlocalhost”,”root”,”root”);
mysql_select_db(‘table’,$link);
mysql_query(‘set names gb2312’);
?
每個涉及到庫的文件都會先 include 這個文件,這樣就不必怕忘記編碼了~
php和mysql參數編碼問題
在PHP編碼時加一行mysql_query(‘set names utf8’);保證MySQL是utf8格式的,php的默認格式一般是utf8的。
急MYSQL PHP 編碼問題
通過mysql命令修改:
修改數據庫的字符集
mysqluse mydb
mysqlalter database mydb character set utf-8;
創建數據庫指定數據庫的字符集
mysqlcreate database mydb character set utf-8;
通過配置文件修改:
修改/var/lib/mysql/mydb/db.opt
default-character-set=latin1
default-collation=latin1_swedish_ci
為
default-character-set=utf8
default-collation=utf8_general_ci
重起MySQL:
或者查看php配置文件一般是config.php
一般就算設置了表的默認字符集為utf8並且通過UTF-8編碼發送查詢,你會發現存入數據庫的仍然是亂碼。問題就出在這個connection連接層上。解決方法是在發送查詢前執行一下下面這句:
mysql_query(“SET NAMES UTF8”); 這個就是設置數據編碼的
它相當於下面的三句指令:
SET character_set_client = utf8;
SET character_set_results = utf8;
SET character_set_connection = utf8;
用php在mysql數據庫內查詢中文出錯(編碼問題)
數據庫的編碼是 gbk 的,在查詢的時候把中文(utf-8)轉換成 gbk編碼就可以了
$nickname=iconv(‘utf-8′,’gbk//TRANSLIT’,$nickname);
轉換後才執行查詢
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/197414.html