嗨,那裏我只是測試自己開發的應用程序,並且遇到問題。我輸入了如何防止以zend格式顯示腳本標籤
<script>window.location = "http://www.google.com";</script>
in Zend_Form_Element_Text
元素。我按提交併保存值。在保存值之後,我將用戶重定向到列表,當它重定向到列表時,腳本標籤將執行,並且它將轉到google.com
。
我的表單元素看起來像
$first_name = new Zend_Form_Element_Text('first_name');
$first_name->setRequired(true)
->addFilter('StringTrim')
->addValidator('StringLength', false, array(2, $metaData['first_name']['LENGTH']))
->setDecorators(array('ViewHelper', 'errors'));
我想知道我怎麼能防止用戶輸入這些類型的值?有沒有內置驗證或其他方式?
你可能有逃跑之前'echo'-ING在其顯示值視圖的值,例如:'$這個 - >逃生($這 - >如first_name)'。 – vstm
@vstm我不會阻止這個值被輸入數據庫?有沒有驗證它? –
轉義防止它被髮送到客戶端。您可以將'HtmlEntities'過濾器添加到您的表單元素中,這應該在將值寫入數據庫之前「轉義」該值。 – vstm