大家好我对php有疑问。在我们的项目中,我们需要将所有的地方包含在我们的index.php中。所有页面的页眉和页脚都是相同的。但是主体应该根据每个页面的重定向而改变。根据我们的客户端,重定向应该仅在索引页面中发生。 所以我们不应该以下面的方式使用 头( '位置:login.php中'); 我们需要使用像 头( '位置:?的index.php GETPAGE = “register.php”');
并在索引页面中我们需要检查条件 if(getpage包含值) { 重定向到getpage网址 } 其他 { 重定向到登录页面 }
但我的问题是如何检查索引页面中的条件如果我使用$ session的getpage它显示错误,没有声明getpage变量。请告诉解决我的问题 答案将受到高度赞赏
答案 0 :(得分: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") ?>