无法将操作获取参数传递给 PHP 文件
Can not pass the action get param to the PHP file
我有一个 smarty 项目,在 .tpl
文件中,有一个表格:
<form method="get" action="{$smarty.server.PHP_SELF}?action=func1">
<input type="text" name="username"/>
<input type="submit">
</form>
有个问题,如果php文件有很多函数针对不同的action requests,那么模板中如果有很多表单,我想通过action
来区分。
但是在我的实践中,看到上面的代码,我是这样写的,这不能将action
传递到我的php文件中。
我想把action
写在form action里,因为这样可以更规范。所以我不想把它写在隐藏的输入中。为什么write in action不能传入php文件?
您可以使用具有指定名称和值的提交按钮:
<form method="get" action="{$smarty.server.PHP_SELF}">
<input type="text" name="username" />
<input type="submit" name="action" value="func1" />
</form>
然后你会得到一个全局变量 $_POST['action'],其值为 func1。但是该值将显示在您的按钮标题上,因此我建议您仅通过提交名称查找表单,例如 name='submit_form1'.
我有一个 smarty 项目,在 .tpl
文件中,有一个表格:
<form method="get" action="{$smarty.server.PHP_SELF}?action=func1">
<input type="text" name="username"/>
<input type="submit">
</form>
有个问题,如果php文件有很多函数针对不同的action requests,那么模板中如果有很多表单,我想通过action
来区分。
但是在我的实践中,看到上面的代码,我是这样写的,这不能将action
传递到我的php文件中。
我想把action
写在form action里,因为这样可以更规范。所以我不想把它写在隐藏的输入中。为什么write in action不能传入php文件?
您可以使用具有指定名称和值的提交按钮:
<form method="get" action="{$smarty.server.PHP_SELF}">
<input type="text" name="username" />
<input type="submit" name="action" value="func1" />
</form>
然后你会得到一个全局变量 $_POST['action'],其值为 func1。但是该值将显示在您的按钮标题上,因此我建议您仅通过提交名称查找表单,例如 name='submit_form1'.