我正在运行一小段PHP,我试图加载导航链接设置的页面。
到目前为止它加载主页很好,但是它被设置为默认值。只要您点击其中一个链接,就无法找到该页面。
到目前为止,我的index.php页面看起来像这样
的
的<div id="wrapper">
<?php
// INCLUDING HEADER ON ALL PAGES
include("pages/header.php");
?>
<main> <!-- wrapping main tag !-->
<?php
$pageLoaded = array('home', 'header' , 'about' , 'work'); // LIST ALL PAGES
$page = ( isset($_GET['page']) ) ? $_GET['page'] : 'home';
if ( in_array($page, $pageLoaded) ){
include("pages/$page.php");
}
// else {
// include("pages/404.php");
// }
?>
</main>
<?php
// INCLUDING FOOTER ON ALL PAGES
include("pages/footer.php");
?>
</div>
的
我的header.php中的实际链接看起来像这样
的
的 <li><a href="home">HOME</a></li>
<li><a href="work">WORK</a></li>
<li><a href="about">ABOUT</a></li>
的
我是PHP的新手,所以不完全确定如何使if语句正常工作。
提前致谢。
答案 0 :(得分:3)
$ _ GET是从get变量(后面出现的变量?)中填充的,因此您需要将链接更改为/index.php?page={page name}
<li><a href="/index.php?page=home">HOME</a></li>
<li><a href="/index.php?page=work">WORK</a></li>
<li><a href="/index.php?page=about">ABOUT</a></li>
答案 1 :(得分:0)
我不建议这样做(包括仅基于互联网参数的文件)。任何人都有风险,包括脚本中的任何系统文件。尝试对请求页面的参数进行一些验证。