2011-05-28 92 views
4

我創建了一個網頁,需要以非英文字符存儲信息。我使用PHPMyAdmin創建數據庫和表格,使用charset utf8和collat​​e utf8_general_ci,然後我在該表格中輸入一些示例數據,在PHPMyAdmin瀏覽區域中,我可以看到非英文字符,但是當我使用php查詢這些表格數據時,問號(?????像)如何使用php顯示非英文字符形式的mysql數據庫?

回答

2

嘗試在你的頭添加此:

<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> 

對不同的內容類型這樣做的不同的方法見this page

+0

我已經添加了這些行,但IM仍然得到問號 – srisar 2011-05-28 07:54:20

+0

確保PHP客戶端使用UTF8卡拉科特設置過,mysql_set_charset(「utf-8」,$康恩);請參閱[該功能的手冊頁](http://php.net/manual/en/function.mysql-set-charset.php)。 – stefgosselin 2011-05-28 08:11:22

+0

你的意思是我的ide? – srisar 2011-05-28 08:12:03

0

你如何確定你的查詢結果不正確形成UTF8?如果您在網站上顯示出來,請記得有一個正確形成的元結構在你的頭段,這樣的事情:

<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> 

,或者另一種方式是在PHP格式化......

<? 
...somecode... 
header ('Content-type: text/html; charset=utf-8'); 
...morecode... 

否則,您的瀏覽器可能會嘗試使用不同的字符編碼來顯示它。

總而言之,PHP處理utf8字符相當不錯。 Ofc有些事情必須考慮,here's a good summary about this

0

如果數據庫的其餘部分不是UTF8,並且該表格使用UTF8,則可以更改HTML頭部的字符集或使用utf8_decode()解碼utf8字符串。

http://us.php.net/manual/en/function.utf8-decode.php

+0

我的數據庫和表格已經是utf8格式了,我可以在phpmyadmin表格瀏覽區看到非英文字母,只有在我的網頁上它沒有顯示 - 我還包含內容類型utf8! – srisar 2011-05-28 08:11:23

+0

用PHPmyadmin頁面上的firefox做一個右鍵點擊 - >頁面信息,你應該有一個編碼窗口。現在對你的PHP頁面做同樣的事情,如果它和Phpmyadmin不一樣,這意味着你有一個問題。 – zzarbi 2011-05-28 20:21:15

相關問題