链接设置为的PHP加载页面

时间:2016-04-06 19:11:47

标签: php html

我正在运行一小段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语句正常工作。

提前致谢。

2 个答案:

答案 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)

我不建议这样做(包括仅基于互联网参数的文件)。任何人都有风险,包括脚本中的任何系统文件。尝试对请求页面的参数进行一些验证。