Доступ ко всем файлам из отдельных папок

Как я могу получить доступ ко всем файлам из папки, например:

Я добавил файлы моего сайта в папку. В корне сайта у меня есть папка, состоящая из моих файлов, index.php и меню моей темы. Итак, мой вопрос,

Как я могу получить доступ к своим файлам в этой папке по определенной ссылке в меню?

Я не хочу, чтобы к ним обращались какmyste.com/sections/forum.php«Скорее, мне нужно знать, как получить к ним доступ, как»mysite.com?page=forum«или что-то вроде CMS. Я действительно ценю, если кто-то может помочь мне с этим. Я искал решение, но не повезло.

Благодарю.

0

Решение

Команда mysite.com?page=forum запустит файл index.php в корневой папке mysite.

Поэтому вам нужно написать код в файле 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

Другие решения

У вас есть много способов сделать это, но если бы я понял ваш вопрос, одним из решений могло бы быть:

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;

}

}
0

Спасибо обоим, да, вроде работа, но в браузере вместо того, чтобы показывать mysite.com/index.php?page=forum показывает mysite.com/sections/forum.php

Я что-то пропустил?

Благодарю.

0
По вопросам рекламы [email protected]