ZF2 - 保护表单元素

时间:2012-11-28 15:00:07

标签: forms zend-framework2

我有一个包含各种表单元素的表单。在创建模式下,所有元素都必须可编辑,但在编辑模式下,我需要锁定某些元素。

我尝试将属性设置为“只读”或“禁用”,并且它在浏览器视图中有效。但是当用户用例如操纵POST请求时在FireFox或其他工具中使用Webdeveloper工具(Forms->启用表单字段),然后从zend表单接受这些值。

如何安全保护/锁定表单元素?

1 个答案:

答案 0 :(得分:0)

只是不要使用您不需要的发布数据修改您的实体/模型。对于这个问题,像$myModel->populate($request->getPost())这样的函数可能不是最好的方法。而是给自己写一个像$myModel->populateForEdit($request->getPost())这样的函数,在其中你只修改允许在某个动作上修改的字段。

永远记住:任何用户都可以向您发送他想要的任何数据。您可以在填充模型之前过滤数据!