0

我有一个主 phtml 脚本,当用户单击主脚本中的提交按钮时,我希望能够运行另一个 phtml 脚本。(这一切都是使用 php 和 html 完成的)目前这就是我正在做的事情。

<input id="submit" type="submit" name="submit" value="Submit" onclick="self.location.href='another.phtml'"/> 

当我运行它时,它会加载页面,但实际上不会执行脚本中的任何内容。而且我确实知道它有效,因为我能够在使用以下命令调用它时成功执行它:

<a href="another.phtml">Click Here</a> 

我还尝试创建一个额外的 php 脚本,并使用 include 来包含额外的 phtml 文件,然后用上面相同的方法调用它。

我也尝试过使用 javascript(参见示例:当用户单击链接时如何运行 PHP 代码?

还有其他方法可以做到这一点吗?

感谢您的时间

4

1 回答 1

0

创建一个动作并在该动作中使用此(another.phtml)视图,您可以使用View Renderer action helper在动作内设置视图文件。在单击链接时发出请求(或者,用您的话来说,运行脚本)是使用 Ajax 完成的。它在互联网上的覆盖范围非常广泛,因此我不会详细介绍。

在 Zend Framework 中,phtml 文件是视图文件:它们应该只是打印变量值、打印 HTML 标记等。而且其中的 PHP 代码量非常少:循环等,正是您需要打印的东西。并且在其中发出数据库请求或任何其他类型的业务逻辑被认为是糟糕的设计,糟糕的逻辑分离。它们不打算在控制器之外运行,独立运行。

希望它有所帮助,如果我误解了什么,请告诉我。

于 2012-07-20T18:23:00.617 回答