如何访问文件夹中的所有文件,例如:
我将我的网站文件添加到了一个文件夹中。在网站的根目录中,我有一个由我的文件,index.php和我的主题菜单组成的文件夹。所以我的问题是,
如何从菜单中的特定链接访问该文件夹中的文件?
我不希望他们像" myste.com/sections/forum.php
"相反,我需要知道如何访问它们,如" mysite.com?page=forum
"或类似CMS的东西。如果有人能帮助我,我真的很感激。我一直在寻找解决方案,但没有运气。
感谢。
答案 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
我错过了什么吗?
感谢。