表单提交无效 - 如何处理它们?

0 php mysql error-handling model-view-controller frameworks

在Web App设计方面,我最近一直在阅读有关最佳实践的大量内容.我的专业语言是PHP/MySQL.在为我正在开发的应用程序创建MVC架构时,我总是遇到存储无效表单提交的位置的问题(这样用户就不必重新输入数据,并且可以显示有用的错误消息) .

通常我已经决定将它作为序列化对象存储在SESSION变量中,但是我的最新阅读告诉我会话很糟糕并且从无状态Web开发中拿走了.我想到的一些选择是:

  1. 像在有效输入中一样将它存储在数据库中,但将其标记为无效
  2. 将其存储在数据库中的特定于无效表单提交的单独表中
  3. 将其存储在文本文件中

他们都有自己的缺点.

  1. 并非所有表单都会导致创建(单个)数据库实体.
  2. 它们看起来和SESSION变量的想法相同

你会推荐什么?

Que*_*tin 5

不要存储它,只是向用户显示错误消息和表单的另一个副本.使用您拥有的数据(在PHP中使用$ _POST/$ _ GET)以使用先前输入的数据预填充表单.