访问单独文件夹中的所有文件

时间:2014-10-10 08:50:22

标签: php content-management-system shortcut

如何访问文件夹中的所有文件,例如:

我将我的网站文件添加到了一个文件夹中。在网站的根目录中,我有一个由我的文件,index.php和我的主题菜单组成的文件夹。所以我的问题是,

如何从菜单中的特定链接访问该文件夹中的文件?

我不希望他们像" myste.com/sections/forum.php"相反,我需要知道如何访问它们,如" mysite.com?page=forum"或类似CMS的东西。如果有人能帮助我,我真的很感激。我一直在寻找解决方案,但没有运气。

感谢。

3 个答案:

答案 0 :(得分:1)

命令mysite.com?page=forum将在mysite根文件夹中运行index.php文件。

所以你需要在index.php文件中编写一些代码来重定向到正确的位置,比如

<?php
if (isset($_GET, $_GET['page'])) {
    // sanitize the $_GET contents
    switch ($_GET[['page']) {
        case 'form' :
           header( 'Location: sections/forum.php' );
           exit;
           break;
        case '...' :

        // etc etc
    }
} else {
    echo 'No $_GET';
}

不幸的是它并没有就此止步,因为你可能想要在查询字符串以及page上放置其他参数。所以现在你必须决定如何处理其他参数。您是将它们添加到header()还是将它们存储在其他地方,并确保其余的应用程序知道从哪里获取它们。

<?php
if (isset($_GET, $_GET['page'])) {
    // sanitize the $_GET contents
    $gets = $_GET;
    unset($gets['page'];
    $qs = '?' . implode('&',$gets);
    switch ($_GET[['page']) {
        case 'form' :
           header( 'Location: sections/forum.php' . $qs );
           exit;
           break;
        case '...' :
            // etc etc
       }
} else {
    echo 'No $_GET';
}

答案 1 :(得分:0)

你有很多方法可以做到这一点,但如果我理解你的问题,一个解决方案可能是:

if (!empty($_GET["page"])) {
   switch ($_GET["page"]) {
        case "forum":
           include('section/forum.php');
           break;
        case "something_else":
           //include other file, or do whatever want
           break;
        default:
           //every else case 
           break;

   }

}

答案 2 :(得分:0)

谢谢两位,有点工作但是在浏览器中而不是显示mysite.com/index.php?page=forum显示mysite.com/sections/forum.php

我错过了什么吗?

感谢。