[問題]PHP連MySQL時顯示character set
各位古道熱腸的人們:
小弟我又遇到一個「以現有自身知識」無法解決的問題
起源:想解決MySQL存取繁體中文沒有亂碼的問題
1) 我的MySQL:
character_set_client | utf8
character_set_connection | utf8
character_set_database | utf8
character_set_filesystem | binary
character_set_results | utf8
character_set_server | utf8
character_set_system | utf8
2) 利用支援Unicode的phpMyAdmin增加包含中文的資料到資料表後
a. phpMyAdmin端可以看到資料表中的中文
b. MySQL Cmd Client端是亂碼(OK~ b. 這邊我暫時不理會,因為 a. 看得到)
3) 瀏覽器端,利用PHP抓此資料表,看不到中文資料(是空的,沒有亂碼)
4) 所以,小弟我在 PHP 中加了下面的指令,想看看從瀏覽器端連到MySQL的編碼是甚麼
========== 指令如下 ========
// Database connection
$dbc = mysqli_connect( DB_HOST, DB_USER, DB_PASSWORD, DB_NAME ) OR
die("fail to connect");
mysqli_query("SET NAMES 'utf8'");
// Character set check
$charset = mysqli_character_set_name($dbc);
printf ("Current character set is %s\n",$charset);
============================
可是我得到的結果卻是 : Current character set is latin1
請問,
1. 我瀏覽器看不到MySQL中的中文資料是不是跟這邊的latin1有關 ?
2. 我的MySQL顯示的 character set 都是 utf8,為什麼這邊會出現 latin1 ?
3. 我該怎麼設定或更改,才能讓瀏覽器看到中文的資料呢?
請高手賜教 ...
感激不盡!
快瘋掉的我
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 219.84.60.175
→
03/29 17:01, , 1F
03/29 17:01, 1F
→
04/07 00:18, , 2F
04/07 00:18, 2F