【问题标题】:How to refresh a page only ONCE after form submit in php?在php中提交表单后如何仅刷新一次页面?
【发布时间】:2016-07-15 19:18:47
【问题描述】:

我只尝试在表单提交上刷新 PHP 页面一次。我的问题是我在此页面上有多个表单元素,每个元素都在更新某些内容。所以我点击其中一个表单提交,我只想刷新一次页面,但使用下面的代码:

echo '<meta http-equiv="Refresh" content="0;' . $page . '">';

页面不断地重新加载自身。有没有办法可以在不影响其他表单元素的情况下摆脱这个循环?

【问题讨论】:

  • 为什么需要刷新?表单提交应该重新处理页面..
  • 不是,是问题
  • 你能把你的表格贴在这里吗?为什么要重新加载?选择国家后,您是否正在加载诸如州之类的字段?
  • @Mickey:是的,我是
  • 那就不要这样提交表单,我建议你使用AJAX来进行这些调用。 'meta http-equiv="Refresh"' 根本不是一种方法。无论您的输入如何,它都会在一个时间间隔内加载页面。相反,您可以在选择中使用“onChange”

标签: php forms page-refresh


【解决方案1】:

您可以使用 POST 方法提交表单。然后检测 POST 请求,并使用 GET 方法(这是默认方法)刷新元数据。

像这样检测 POST:

if ( $_SERVER['REQUEST_METHOD'] == 'POST' ) {}

查看这些问题:

Detecting request type in PHP (GET, POST, PUT or DELETE)

How to detect if $_POST is set?

研究 RESTful 架构,了解何时使用 POST 与 GET:

https://en.wikipedia.org/wiki/Representational_state_transfer

【讨论】:

    猜你喜欢
    • 2020-05-07
    • 2020-06-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-25
    • 1970-01-01
    相关资源
    最近更新 更多