2012-03-22 97 views
2

我知道到目前爲止,這個話題被descibed幾次,但這裏是我的怪之一:ZEND PHP + JQUERY編碼問題

我有我的數據庫設置爲

拉丁-2-一般慈

我的頁面設置爲:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <?php header('Content-type: text/html; charset=utf-8');?> 

這裏是問題,當我嘗試使用拋光升etters即「ą/ł」 我必須分離方法來添加信息到我的MySQL基地。
首先使用AJAX的JQUERY-拋光字母沒有存儲,因爲它似乎看上去但像這樣的事情:

人?

,但令人驚訝,當我用JS把它們在屏幕上看起來不錯 - 一個

二和Zend_Form - 我鍵入他們直接只使用PHP代碼中添加信息,字符存儲確切方式 - 在我數據庫:łołoł但是當JS嘗試閱讀這些字符是中省略FE

數據庫:łołoł

查看:OO

任何想法如何解決它?

問候
拉狄克

+0

您應該使用在整個管道UTF-8。將latin-2從數據庫中取出並將其轉儲到utf-8環境中將不起作用。 – 2012-03-22 16:50:19

+0

把所有東西都改成utf-8仍然是同樣的問題 – radek 2012-03-22 23:52:45

回答

1

如果您使用的application.ini配置文件只是把此行:

resources.db.params.charset = "utf8" 
resources.db.params.driver_options.1002 = "SET NAMES utf-8" 
+0

我設置了這個選項,並且確保我在任何地方使用utf-8still相同的問題 – radek 2012-03-22 23:47:35

1

請確保您有編碼設置正確(最好是所有以 'UTF-8')上:

  • database connection
  • PHP的輸出頭('內容 - 鍵入:text/html; charset = utf-8')
  • HTML元標題

並確保你沒有在中間做任何奇怪的事情(如致電utf8_encode)。你需要覆蓋所有的基地才能正常工作。

+0

謝謝你的回答,我沒有做像utf8_en這樣奇怪的事情......但是你能給我一些建議如何使用zend框架來設置數據庫連接嗎?非常感謝你 – radek 2012-03-22 17:21:20