【问题标题】:How to reload the Page by header at first time only如何仅在第一次按标题重新加载页面
【发布时间】:2016-02-12 19:06:09
【问题描述】:

我需要在第一次加载页面时立即重新加载或刷新页面 (index.php)。因为 google.com 将 url 提供给我的页面,其中没有更多数据,如 index.php?id=10。所以,我只需要在第一次将 url 恢复为 index.php。我需要简单的解决方案。请帮忙?

【问题讨论】:

  • 您能否更深入地解释您需要什么?
  • 你能写一段代码,看看挑战在哪里吗?
  • 所以 ID 决定显示哪些数据?您为什么不为此实施正确的处理,而不是像那样重定向? - 如果你找不到带有 ID 的数据 - 然后重定向到基地,否则很好。
  • 例如,如果您第一次使用诸如 index.php?id=10 之类的 URL 调用我的页面。我需要将 url 恢复为 index.php。因为如果 id==10。我的页面中没有更多数据。但如果 id==9。我的页面中提供的数据。所以当他们打电话给我的页面时。它应该去 index.php 只是没有附加价值。
  • 先生,当用户在我的页面中使用搜索选项时,会有很多不同的结果。所以只有第一次我不想在没有数据的情况下显示我的页面。你清楚吗?

标签: javascript php jquery html


【解决方案1】:

我建议您使用$_SESSION 全局数组,因为它允许您轻松地将信息从一个页面传递到另一个页面(或同一个页面,如本例所示)。不过,请务必在使用它的每个页面上初始化会话。

代码应该是这样的:

session_start();    //Important! Without this, $_SESSION doesn't work

//reload_index is a variable I'm using in the array, nothing restricted; you can use whichever name you like
if (!isset($_SESSION['reload_index']) || ($_SESSION['reload_index'] == 'yes'))
{
    $_SESSION['reload_index'] = 'no';
    header("Location: index.php");    //Or whatever page you want to go; you can add parameters as well, like index.php?id=10
}

//...Rest of the page

我希望这可以帮助您解决问题。最好的问候。

【讨论】:

  • 先生,我无法使用会话。因为它是 index.php 没有更多的会话值。
  • 这应该不是问题,@yaseenahmed,只要您在开始时使用session_start();
  • 这个,除非你不能使用 $_SESSION 作为技术限制
【解决方案2】:

检查是否在会话中设置了标志。如果没有,请设置它并重新加载您的页面。 简单伪代码示例:

session_start();

if (!isset($_SESSION['redirect_flag'])) {
  $_SESSION['redirect_flag'] = true;
  header("Refresh:0; url=index.php");
}

【讨论】:

  • 先生,我需要没有会话。因为没有更多的会话价值。
  • 先生,此代码给出错误警告:警告:无法修改标头信息 - 标头已由 /home/nikahservi/public_html 中的(输出开始于 /home/nikahservi/public_html/index.php:1)发送/index.php 第 6 行
  • 当您在输出部分文档后进行标头重定向时会出现该错误。这意味着此代码必须在您的 <head> 标记之前
  • 谢谢先生关闭所有浏览器并重新打开页面后它正在工作。但我已经标记了另一个答案。非常感谢。
猜你喜欢
  • 2018-12-18
  • 1970-01-01
  • 2011-10-22
  • 2018-02-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-10
  • 1970-01-01
相关资源
最近更新 更多