當前位置:首頁 » 編程語言 » phputf8亂碼

phputf8亂碼

發布時間: 2022-09-09 00:47:39

php+mysql中utf-8顯示亂碼

。。。那是因為你的文件保存成了
GB2312編碼
你把文件保存成UTF-8看下
文件默認編碼是和IDE
有關的。
你從資料庫獲取的數據是
通過set
names
utf8
這個沒問題
你META設置的是UTF-8
瀏覽器也知道用UTF-8
去瀏覽
也沒問題
問題是你這個文件本身的編碼要是UTF-8才行。

❷ php中用utf8編碼輸出中文就是亂碼

header("Content-Type: text/html; charset=utf-8");
可以省略,因為在meta已經定義了。
亂碼的原因是保存文件時,文件的編碼與顯示編碼不一致,只要另存為一次就好了

❸ php連mysql用 utf-8編碼亂碼怎麼辦

1.修改my.ini:[mysql]default-character-set=utf8[mysqld]default-character-set=utf8default-storage-engine=MyISAM在[mysqld]下加入:default-collation=utf8_bininit_connect='SET
NAMES
utf8'
2.在需要做資料庫操作的php程序前面加上mb_internal_encoding('utf-8');
3.create
table最後邊加上ENGINE=MyISAM
DEFAULT
CHARSET=utf8
COLLATE=utf8_bin
4.phpMyAdmin/config.inc.php
$cfg['DefaultCharset']
=
'utf-8';$cfg['RecodingEngine']
=
'iconv';
5.phpMyAdmin/libraries/string.lib.php將第41行的mb_internal_encoding($GLOBALS['charset']);改為:mb_internal_encoding('utf-8');
6.phpAdmin導出數據時把"二進制區域使用十六進制顯示"的勾去掉

❹ php顯示資料庫里的中文亂碼.。ps:資料庫和php顯示都設置了utf8,為什麼還會顯示亂碼求解答!!

原因:
這個是因為你的瀏覽默認解析編碼不是 UTF-8,這種情況瀏覽器他不知道你的文字要顯示 什麼編碼。
解決方案:
要麼設置瀏覽器默認編碼為 UTF-8
在輸出列印前,先輸出 <meta charset="utf-8">來告訴瀏覽器你想要使用的編碼方式。
栗子:

echo '<meta charset="utf-8">';//將這行放到第一行輸出

echo "<tr><><tr/>";//

❺ PHP utf-8 js 亂碼

你的編碼有問題,表面是UTF-8,實際可能不是。
方法:
把你現在的所有代碼復制,黏貼到txt中。然後另存為。在txt的另存界面
看到編碼了么?選擇UTF-8;另外ANSI就是電腦默認編碼,中國的話都是GB-2312;
用txt重新整理一下編碼就不會亂碼了~

❻ php與資料庫中,都是用的utf8編碼,但還是亂碼

你的php代碼還有請求頭的編碼和響應頭的編碼也都要統一成utf8,只控制資料庫的編碼不行的

❼ php 有關utf-8亂碼的問題

伺服器上用了別的編碼,應該是windows的伺服器吧?有可能是GBK或者GB2312編碼。
兩種方法解決此問題。
1、先在本地把所有文件都換成伺服器的編碼,然後再傳上去;此法,你的php編碼需要與伺服器上的資料庫編碼一致,也既有可能是那兩種編碼。
2、修改伺服器上的編碼為utf-8。此方法需要你有足夠的許可權去修改伺服器上apache或者IIS編碼。如果修改編碼成功,你的資料庫也不用換編碼。
如果保持你的網頁編碼不變,那就要修改mysql編碼,即像stjdydayou
所言,執行資料庫數據插入、更改、查詢時,執行一條查詢語句:
mysql_query("set
names
'utf-8'");
之所有用utf-8編碼,是因為你的php編碼目前為utf-8.

❽ PHP已經聲明是utf8編碼了,為什麼瀏覽器識別不出來,還是亂碼

php的文件用記事本打開,然後點擊另存,選擇utf-8編碼後保存

❾ PHP使用utf8插入中文數據到MySQL中文顯示會亂碼怎麼辦

資料庫使用utf8編碼,需要在操作的過程中統一全部編碼。

1.資料庫默認編碼

CREATEDATABASE`test`DEFAULTCHARACTERSET'utf8';

2.表默認編碼

CREATETABLE`tablea`(
`id`INTNOTNULLAUTO_INCREMENT,
`title`VARCHAR(100)NULL,
)ENGINE=InnoDBDEFAULTCHARSET=utf8;

3.欄位默認編碼

默認情況下,欄位的編碼同表的編碼,但是如果修改了表的編碼,欄位編碼不會同步修改,需要手動修改

這里修改編碼測試我將utf8 改為 gb2312 ,僅用於觀察修改後的情況(實際使用中可能是將gbk修改為utf8)

ALTERTABLE`test`.`tablea`CHARACTERSET=gb2312;

--修改表編碼後,查看建表語句
showcreatetable`tablea`;

--可以看到輸出的建表語句中欄位單獨設置了編碼
CREATETABLE`tablea`(
`id`INTNOTNULLAUTO_INCREMENT,
`title`VARCHAR(100)CHARACTERSETutf8NULL,
)ENGINE=InnoDBDEFAULTCHARSET=gb2312;

--需要手動修改欄位編碼
ALTERTABLE`tablea`
CHANGECOLUMN`title``title`VARCHAR(100)CHARACTERSET'gb2312'NULLDEFAULTNULL;

4.當前資料庫連接的編碼

連接數時設置編碼

//PDO連接
$db=newPDO('mysql:host=myhost;dbname=test','login','password',
array(PDO::MYSQL_ATTR_INIT_COMMAND=>'SETNAMES'UTF8'')
);

//mysqli連接
$link=mysqli_connect("127.0.0.1","my_user","my_password","test");
mysqli_query($link,"SETNAMES'utf8';");

通過以上幾步操作,基本可以保證資料庫使用過程中不會出現亂碼

❿ php設置成utf-8還是亂碼了怎麼辦

有時後php代碼里邊設置了「header("Content-type:
text/html;
charset=utf-8");」不一定會管用,因為有時文件本身格式就是錯誤的,你先把代碼復制到一個txt文件里邊,然後用代碼工具對php文件進行轉碼成utf-8格式(這時你就會發現里邊的代碼亂碼了,由其是中文和特殊字元),再把txt里邊的代碼復制覆蓋原來的php文件內容,然後保存即可,例如用Notepad++
工具
可以對文件本身進行轉碼

熱點內容
成都少兒編程培訓機構 發布:2025-01-13 03:21:20 瀏覽:88
linuxatop 發布:2025-01-13 03:19:01 瀏覽:438
彩38源碼下載 發布:2025-01-13 03:16:51 瀏覽:971
手機app緩存可不可以刪 發布:2025-01-13 03:10:46 瀏覽:937
安卓怎麼顯示第五個人圖鑒 發布:2025-01-13 03:03:23 瀏覽:922
內網訪問很慢 發布:2025-01-13 03:01:01 瀏覽:454
魔獸腳本p閃 發布:2025-01-13 02:58:40 瀏覽:290
java遞減 發布:2025-01-13 02:54:40 瀏覽:489
決策樹的演算法例題 發布:2025-01-13 02:53:15 瀏覽:448
腳本四要素 發布:2025-01-13 02:40:18 瀏覽:929