phpacademy войдите / зарегистрируйтесь чистый URL

В настоящее время я работаю над созданием собственного веб-приложения CRM, и я следовал учебному пособию Alex youtube, которое представляет собой вход в систему / регистрацию с использованием ООП.

Кроме того, мне нужно, чтобы мой index.php был динамическим переключателем содержимого, который включает только верхний и нижний колонтитулы, пока содержимое загружается из папки, в которой хранятся все страницы. Я считаю, что конечный результат должен быть примерно таким: www.example.com/index.php?page=profile

Я оглядываюсь вокруг и мне кажется, что я делаю что-то похожее на шаблон MVC, где index — это корневой файл, а весь контент загружается из папки просмотра.

Мне удалось все сделать правильно, но теперь вместо отображения ссылки, например: www.example.com/user.php?name=jennifer

Я хотел, чтобы это было www.example.com/user/name/jennifer

Я пытаюсь просмотреть форум phpacademy, но форум, похоже, заброшен, после некоторого поиска мне удалось найти тему, которая соответствует тому, что я хочу, но код не работает, и я получил ту же ошибку с плакатом.

вот код:

<?php
// Define the root of the site (this page should be in the root)
define('ROOT', rtrim(__DIR__, '/') . '/');
define('PAGES', ROOT . 'pages/');// Define "safe" files that can be loaded
$safeFiles = ["login", "regiser", "profile", "changepassword"];// Get URL
if(isset($_GET['page']) && !empty($_GET['page'])) {
$url = $_GET['page'];
} else {
$url = '/';
}// Remove Path Traversal
$sanatize = array(
// Basic
'..', "..\\", '../', "\\",
// Percent encoding
'%2e%2e%2f', '%2e%2e/', '..%2f', '%2e%2e%5c', '%2e%2e', '..%5c',     '%252e%252e%255c', '..%255c',
// UTF-8 encoding
'%c1%1c', '%c0%af', '..%c1%9c'
);
$url = str_replace($sanatize, '', $url);
// Prevent Null byte (%00)
// PHP 5.6 + should take care of this automatically, but PHP 5.0 < ....
$url = str_replace(chr(0), '', $url);
// Filter URL
$url = filter_var($url, FILTER_SANITIZE_URL);
// Remove any extra slashes
$url = rtrim($url, '/');
// Make lowercase url
$url = strtolower($url);// Check current page
$path = PAGES . $url . '.php';
// If the file is in our safe array & exists, load it!
if(in_array($url, $safeFiles) && file_exists($path)) {
include($path);
} else {
echo "404: Page not found!";
}

Я ищу в Google, но не могу найти решение, и я заметил, что на этом форуме тоже были люди, спрашивающие, поэтому я надеюсь, что кто-то может помочь мне в этой области.

0

Решение

Задача ещё не решена.

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

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector