无法将操作获取参数传递给PHP文件

时间:2018-07-20 07:51:38

标签: php smarty

我有一个聪明的项目,在.tpl文件中,有一种格式:

<form method="get" action="{$smarty.server.PHP_SELF}?action=func1">
    <input type="text" name="username"/>
    <input type="submit">
</form>

有一个问题,如果php文件具有针对不同操作请求的多种功能,那么在模板中是否具有多种形式,我想通过action进行区分。

但是在我的实践中,请参见上层代码,我这样写,这无法将action传递到我的php文件中。

我想在表单操作中编写action,因为这可能更标准。所以我不想在隐藏的输入中编写它。为什么在操作中写不能传递到php文件中?

1 个答案:

答案 0 :(得分:1)

您可以使用具有指定名称和值的提交按钮:

<form method="get" action="{$smarty.server.PHP_SELF}">
    <input type="text" name="username" />
    <input type="submit" name="action" value="func1" />
</form>

,然后您将获得一个带有值func1的全局变量$ _POST ['action']。但是该值将显示在您的按钮标题上,因此我为您提供了仅通过提交名称(例如name ='submit_form1')查找表单的方法。