我有一个主要的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(参见示例:How do I run PHP code when a user clicks on a link?)
我还有其他办法吗?
感谢您的时间
答案 0 :(得分:0)
创建操作并在该操作中使用此(another.phtml)视图,您可以使用View Renderer action helper在操作中设置视图文件。使用Ajax完成点击链接时发出请求(或者说,运行脚本)。它在互联网上被广泛覆盖,所以我不会详细介绍。
在Zend Framework中,phtml文件是视图文件:它们应该只是打印变量值,打印HTML标签等等。它们中的PHP代码量非常少:循环等等,正是你需要打印的内容一些东西。在其中制作数据库请求或任何其他类型的业务逻辑被认为是糟糕的设计,逻辑分离不良。它们并不意味着在控制器外面运行,而是独立运行。
希望它有所帮助,如果我误解了某些内容,请告诉我。