我知道例如,Zend Framework具有使用验证器创建表单元素的功能。但现在,让我们说用户输入完整的垃圾数据,这是无效的。接下来会发生什么?让我们说JS部分出错或JS被禁用,服务器接收垃圾数据。
“大”PHP框架如何处理这个概念?如果您知道,请提及框架并对其进行描述。这会有很大的帮助。
如何将错误消息返回到表单以及它们如何显示?这在技术上是如何完成的?
从我的观点来看,理论上它必须采用这种方式:
我不知道其他,但如果有,我需要知道; - )
有些东西告诉我这不是最好的解决方案。
答案 0 :(得分:2)
首先,除非您使用支持Dojo的表单,否则Zend Framework与javascript无关。 JS验证可以由您自己编写,也可以绑定到启用Dojo的表单中。
验证包括迭代每个ZFE并检查它的Validator。如果发生错误,则将其作为错误消息存储在ZFE中。当您再次显示表单时,如果您使用的是默认装饰器,那么您将加载Zend_Form_Decorator_Errors,它会使用它的错误消息“修饰”该元素。
我建议从isValid()方法开始阅读Zend_Form的源代码。阅读并查看正在发生的事情非常简单。