我如何构建一个处理引擎


How can i build a processing engine

所以我建立了一个由2个页面组成的php系统。它们的功能是:

第1页:基本表单,用于输入数据,POST到第2页。

第2页:从第1页加载输入数据,处理所有内容并进行适当的计算,然后使用结果数据并使用它来确定要覆盖在主模板上的文件名。

它工作得很好,我只是想知道是否有可能在2页之间添加一个"中间人",一个引擎,如果你愿意,那就处理一切,而不是第2页必须这样做,然后它会自动POST到第2页完成后,它会加载结果并使用它们,但是,如果有错误,它会重新加载第1页。我只是想试着让事情更有条理和整洁。

谢谢大家

将"业务逻辑"从"应用逻辑"answers"表示层"中分离出来通常是一个好主意——尽管在一个只有2页的应用程序中,这可能不是一个优先考虑的问题。

有许多设计来实现这一点;最普遍接受的是"模型/视图/控制器"。有很多PHP框架在PHP中实现MVC;再一次,对于一个只有2页的应用来说,这可能有些过分,但如果你想要超过2页,就值得研究一下。

解决具体问题的方法:

  • Page 1 post to formhandler.php.
  • Formhandler.php验证数据,并执行业务逻辑。如果数据是有效的,formhandler将数据放入会话并使用header函数将浏览器重定向到页面2;第2页从标头获取数据并显示
  • 如果数据无效,formholder将错误消息和数据放入会话,并使用header重定向回页1。

Formhandler.php中不应该嵌入HTML——它只执行业务逻辑。第1页和第2页应该没有业务逻辑,但可能有一些应用程序逻辑(例如,显示第1页上的错误消息)。

在"middle man"脚本中使用header -但如果您已经在"middle man"脚本中使用print/echo进行了一些输出,则它将不起作用:

header("Location: middlemanscript.php?".$yourVars);