2010-11-25 18 views
0

我有所有MySQL dbs,表和列設置爲utf8_general_ci我如何在UTF-8中存儲£符號MySQL

如果我使用phpMyAdmin將一個£符號放入一行中,當我在utf-8字符集頁面上顯示它時,我會得到一個很好的舊問號鑽石。

但是,在同一頁上,如果我把<?php echo 'pound symbol test: £' ?>,符號顯示正確,所以問題必須與MySQL而不是頁面。

如果我傾倒我的數據庫,並使用我的文本編輯器(設置爲UTF-8)添加£,然後重新導入,同樣的問題與在phpMyAdmin加入£

alt textalt text

+0

你確定phpMyAdmin正在使用UTF-8嗎? – 2010-11-25 11:53:34

+0

我認爲這是問題,如果我在phpmyadmin中鍵入「£」,它會在我的頁面上顯示查找內容。我可以更改phpmyadmin的設置嗎? – Haroldo 2010-11-25 11:59:52

+1

輸出意味着您的數據不是有效的UTF-8。否則,替換字符U + FFFD將不會顯示。 – Gumbo 2010-11-25 12:21:26

回答

1

是你的數據庫連接是UTF-8編碼的?

嘗試發送一個查詢:

SET NAMES utf8; 

打開連接後。

1

檢查phpmyadmin wiki

毫無疑問phpMyAdmin是方便,
但我會建議使用命令行
(該給自己一個機會,以提高你的SQL知識)

0

勝利是我的!

我剛剛發送了大約30分鐘試圖弄清楚,並提出了這一點。可能不是最好的解決方案,但它的工作原理!

html_entity_decode(htmlentities('£250 to £1000',ENT_COMPAT, 'UTF-8', false), ENT_COMPAT, 'ISO-8859-1') 
相關問題