я не могу связать таблицы в БД. пишет ошибку. Может это из за R::frozen() скажи пожалуйста, ты говорил вот так делать инфу о страницах https://disk.yandex.ru/i/tSTWvuJzqQx5LQ
Тему перечитайте. Можно, конечно, сравнивать по url/path, но это какой-то Архиварикс получится. У нас такое только на паркинге используется. И то там какая-то мин. оптимизация есть: ведущий слеш url'ов не хранится в БД, доступ к внутряку может блокироваться без попытки выполнить доп. запрос к БД (там внутряк хранится в доп. таблице, а главная описывается в основной таблице – таблице хостов). В теме я писал про slug (не поняли, что это такое, посмотрите в поисковике), а не про url. Это означает, что можно даже не пытаться делать хотя бы один запрос к БД, если вы ожидаете получить только однокомпонентный путь, а получаете многокомпонентный. В простой модели любой путь первоначально делится на две части: первый компонент и «остаток», например 'a' и 'b/c'. И первый запрос к БД выполняется почти всегда (хотя никто не запрещает использовать какой-то фильтр, чтобы не пытаться делать запрос к БД при некорректном формате пути, например с левыми символами, или некорректном формате всего url'а). А потом уже по типу категории определяется, должен ли входящий путь быть однокомпонентным или нет. Тип 0 указывает на то, что путь должен быть однокомпонентным. Например для g09.ru/page указан тип 0, так что при запросе g09.ru/page/1 фронт-контроллер не будет даже пытаться запускать контроллер, а сразу вернет 404-ую.
Ребята подскажите, пишу аля "файловый менеджер" создаю папку в папке все норм. Но когда пытаюсь создать третью папку в папке. То получаю ошибку Код (Text): Warning: require_once(.fnc/functions.php): Failed to open stream: No such file or directory in C:\OpenServer\domains\test\one_folder\uyuyuy\index.php on line 2 PHP: function new_file($path) { if ($_SERVER['REQUEST_METHOD'] && isset($_POST['new_file'])) { file_put_contents($_SERVER['DOCUMENT_ROOT'] . $_SERVER['REQUEST_URI'] . $path, ''); header("Location: {$_SERVER['REQUEST_URI']}"); } } function new_folder($name) { if ($_SERVER['REQUEST_METHOD'] && isset($_POST['new_folder'])) { mkdir($_SERVER['DOCUMENT_ROOT'] . $_SERVER['REQUEST_URI'] . $name); $text = file_get_contents('fnc/scan.txt', FALSE, NULL, 0); file_put_contents($_SERVER['DOCUMENT_ROOT'] . $_SERVER['REQUEST_URI'] . $name . '/index.php', $text); header("Location: {$_SERVER['REQUEST_URI']}"); } } вот функции при помощи которых я создаю папки и файлы. Я понимаю, что вы ничего не поняли, но а вдруг. Я просто сформулировать не могу так как опыта нет. --- Добавлено --- Как прописывать путь к файлу с функциями если иерархия будет большая?
Абс. путь используй. Типа PATH.'.fnc/functions.php', где в PATH – абс. база. Это полнейшая хрень. Забудь про индексные файлы. Используй единую точку входа. Когда файл с кодом не будет кочевать вместе с данными, PATH можно определить не через DOCUMENT_ROOT, а через местоположение самих программных файлов при помощи магической константы, что норм., например: PHP: define('PATH',__DIR__.'/mods/'); --- Добавлено --- И код нужно держать вне просматриваемой области корневого каталога (или вообще вне корневого каталога), тогда будет не нужно извращаться с сокрытием папок/файлов при помощи точки.