我正在写一个小脚本在家庭服务器上运行,它将通过post处理表单数据,但是应该提交到带有get值的页面。即index.php文件接收$ _GET,用于设置加载的页面。
如果加载了页面index.php?page = form,那么应该出现一个表单,这样可以正常工作,但表单处理在同一页面上。
有一个这样的表格:
from file1 import file1_fun1
def deco(target):
print("Decorator works")
def wrapper():
print("decoration start")
result = target()
print("decoration end")
return wrapper
@deco
file1_fun1() # ← it does not make sense.
会将数据发布到index.php吗?而不是index.php?page = form。
可以这样做吗?
答案 0 :(得分:1)
上面的代码对我有用。如果我按回车键,我会到站点index.php?page = form。也许你的问题在其他地方。 这里有两个选项,其中一个对你有用......
这可能吗?
如果未设置$ _POST,则会显示表单,如果您提交表单,则可以处理数据。所以你不再需要get变量了。
<?php if (isset($_POST['email'])): ?>
<!-- process the inputs -->
<?php else: ?>
<form action="index.php" method="post">
<input type="text" name="email">
<!-- Other form fields here -->
<button type="submit">Submit</button>
</form>
<?php endif; ?>
如果您需要$ _GET变量,请尝试
<?php
if ($_GET['page'] == 'form'):
//process the inputs
else: ?>
<form action="index.php" method="GET">
<input type="hidden" name="page" value="form">
<input type="text" name="email">
<!-- Other form fields here -->
<button type="submit">Submit</button>
</form>
<?php endif; ?>