2011-01-25 18 views
1

我創建了一個使用zend框架的PHP中,我選擇保存在一些地方的HTML模板,以方便重新設計的意見和all.Now保存這些模板(視圖,側邊欄)我不得不使用Zend_Filter_InputZend_Filter_HtmlEntities(array('quotestyle' => ENT_QUOTES)如何顯示htmlspecialchars_decode的真實標籤?

其中一個原因是安全性,第二個是我使用freeRTE輸出模板進行編輯,而freeRTE對quotes非常敏感,所以我不得不做一些事情。

現在我很忙,因爲當我試圖輸出模板回來或最糟糕的顯示它在其佈局向公衆,它顯示原始html與標籤,html_entity_decode和htmlspecialchars_decode不能做一個thing.example而不是顯示圖像它顯示在頁面上以下:

<div id="welcome"> <div id="welcome_img"><img src="/images/welcome.jpg" alt="welcome" /></div></div> 

任何線索?任何人都經歷過這個,請分享有關這方面的知識。謝謝閱讀。

+0

你能提供一些發生什麼事情的例子嗎?問題是,當你在視圖中回顯它們(echo $ this-> escape($ tempalte))時,你沒有獲得html標籤? – Marcin 2011-01-25 02:31:37

+0

嗨marcin我已更新帖子來回應你的問題。在頁面上,我期望看到真正的圖像顯示不是html代碼。這就是在視圖中發生的事情:`echo html_entity_decode($ this-> output [「content_template 「]);` – 2011-01-25 10:09:43

回答

1

保存HTML時,不能使用htmlentities進行過濾。它將取代<,>和&加上所有可替換的字符。

編輯: 從節約刪除ヶ輛過濾器,因爲保存HTML作爲,是將模板編輯器的整點。

如果您想添加一些與安全相關的功能,請從HTML中刪除標籤以及您發現有害的任何其他html標籤! (嵌入?)