【问题标题】:including different webpages with a session variable in php在php中包括具有会话变量的不同网页
【发布时间】:2014-06-14 12:07:00
【问题描述】:

大家好,我对 php 有疑问。在我们的项目中,我们需要将所有页面包含到我们的 index.php 中。所有页面的页眉和页脚都是相同的。但是正文应该根据每个页面的重定向而改变。根据我们的客户,重定向应该只发生在索引页面中。 所以我们不应该以如下方式使用 header('位置:login.php'); 我们需要使用like header('location:index.php?getpage="register.php"');

在索引页面中我们需要检查条件 如果(getpage 包含值) { 重定向到getpage url } 别的 { 重定向到登录页面 }

但是我的问题是如何检查索引页面中的条件,如果我使用 getpage 的 $session 它显示未声明 getpage 变量的错误。请告诉我的问题的解决方案 非常感谢您的回答

【问题讨论】:

  • 我们的项目是哪一个?

标签: php session indexing include


【解决方案1】:

你有吗

session_start();

在页面上任何其他 php 之前的 php 代码顶部?

如果没有这个,您将丢失页面之间的会话变量。

您想要做的只是使用 $_GET 或 $_SESSION 变量更改页面的正文,因此在您想要的标签中 <? include ($_GET['getpage] . ".inc.php") ?>

所以如果你通过 index.php?getpage=register

它将在您的正文内容中包含 register.inc.php。

请注意,如果您正在处理任何重要的事情,您可能希望避开特殊字符等,但我只是在回答这个问题。

如果你想用会话变量覆盖它,那么我会做这样的事情

if($_SESSION['getpage']) {$getpage = $_SESSION['getpage'];} else { if($_GET['getpage']) {$getpage = $_GET['getpage'];} else {$getpage ='home';}}

然后在你的身体里调用<? include($getpage) . ".inc.php") ?>

【讨论】:

  • 谢谢它的工作,还有一件事是。在我的一个网页中,即在 delete.php 中,我有这样的链接 因为它有两个链接,我怎样才能将它放入相同的正文内容中?
  • 如果您想在您的“编辑”页面中包含您的“id”页面,那么我只需在您的编辑页面中查找 id 变量,<? if ($_GET[id]) { *do whatever you want to do with your id page * } ?>
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-07-28
  • 2011-08-17
  • 2013-03-21
  • 2020-01-16
  • 1970-01-01
  • 2015-04-08
  • 1970-01-01
相关资源
最近更新 更多