我该如何构建处理引擎

时间:2013-04-28 13:05:42

标签: php html

所以我构建了一个由2页组成的php系统。这些功能是:

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

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

它工作正常,我只想知道是否可以在两个页面之间添加一个“中间人”,如果你愿意,可以处理一切引擎,而不是第2页必须这样做,那么它会自动完成后将POST加载到第2页,它将加载结果并使用它们,但是,如果出现错误,它将重新加载第1页。我只是想尝试让事情更有条理和整洁。

谢谢你们

2 个答案:

答案 0 :(得分:2)

将“业务逻辑”从“应用程序逻辑”和“表示层”拆分出来通常是一个好主意 - 尽管在一个2页的应用程序中,这可能不是一个优先事项。

有许多设计可以实现这一目标;最常被接受的是“模型/视图/控制器”。有一堆PHP框架在PHP中实现MVC;再一次,对于一个2页的应用程序可能有点过分,但值得调查一下,如果你希望增长超过2页。

解决您具体问题的方法:

  • 第1页发布到formhandler.php。
  • Formhandler.php验证数据,并执行业务逻辑。 如果数据有效,则formhandler将数据放入会话并使用header函数将浏览器重定向到第2页;第2页从标题中获取数据并显示
  • 如果数据无效,表格标记会将错误消息和数据放入会话中,并使用header重定向回第1页。

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

答案 1 :(得分:1)

在“中间人”脚本中使用header - 但如果您已经在“中间人”脚本中使用print / echo进行了一些输出,那么它将无效:

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