2013-05-28 179 views
0

在Zend Form中如何在文本字段中設置特殊字符? 這些字符作爲& aacute保存在數據庫中;等 在我的application.ini我已經設置與UTF這樣的數據庫連接:在MySQL數據庫中設置Zend Form中的特殊字符

resources.db.params.charset = "utf8" 

的表被設置爲utf8_general_ci。 並在標頭:

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

下面的例子:

$form->getElement('title')->setValue($Row['title']); 

當我打開一個網頁它顯示& aacute;就像在數據庫中一樣。

回答

1

這不是一個真正的字符集問題。 ZF轉義顯示在表單字段中的數據,但是您將一個已經轉義的值提供給表單字段,所以轉義發生兩次。這意味着&符號被更改爲&amp;,這就是您看到的轉義值的原因。

如果可以的話,我建議存儲未轉義的數據(因此您可以在db中存儲數據,因爲您使用的是UTF-8,所以這將工作得很好)。那麼你不會有這個問題。或者,您可以禁用單個表單元素上的轉義。

+0

非常感謝,我逃脫了它的形式本身。 –