У меня есть базовый c полустати c веб-сайт, написанный на PHP. В папке root у меня есть файл с именем posts.php
, а также папка с именем posts
, в которой находятся post1.php
, post2.php
и т. Д. И т. Д.
the * Файл 1007 * находится в папке root. При открытии он создает список из файлов внутри папки posts
и ссылки на них.
По сути, я хочу открыть php страниц, которые я создаю статически, и сохранить в папке posts / в браузере.
Проблема заключается в том, что при попытке открыть эти сообщения я не могу. Я могу жестко связать их, и это «работает», но если я это сделаю, мои базовые шаблоны не будут работать.
Когда я нажимаю ссылки I go с одной страницы на другую, и URL показывает ?p=index
или ?p=posts
. post1.php
должно быть примерно как ?p=posts/post1
, но это не работает.
Может быть проблема с именованием, поскольку есть папка и файл php с тем же именем (сообщения), но я не уверен, что это так, и как обойти это.
edit : Ниже приведены части кода, которые, по моему мнению, относятся к этой проблеме:
мой индекс. php
<?php
require_once('functions.php');
require_once('header.php');
load_page();
// require_once('init.php');
require_once('footer.php');
?>
My заголовок. php
<html lang="en">
<head>
<link rel="stylesheet" type="text/css" href="style.css" />
<meta charset="utf8">
<title>Paulo RSS Alves</title>
</head>
<body>
<div>
<!-- these are working without any issue -->
<h1><a href='?p=index'>Paulo RSS Alves</a></h1>
<div class="bar">
<p><a href="?p=posts" class="link">Posts</a></p>
</div>
сообщений. php:
<?php
$dir = scandir('./post');
foreach ($dir as $file)
{
$path_parts = pathinfo($file);
if ($path_parts['extension'] == 'php' and ctype_alpha($file[0])){
// the purpose of this code is to only consider files with
// the .php extension and to remove that extension from the url.
$file_f = str_replace('.'.$path_parts['extension'], "", $file);
echo '<li><a href='.'post/'.$file_f.'>'.$file_f.'</li>';
}
}
?>
и функций. php:
<?php
function load_page() {
(isset($_GET['p'])) ? $page = $_GET['p'] : $page = 'index';
if (file_exists($page) && $page != 'index'){
require_once($page);
} else{
require_once('init.php');
}
}
?>
init. php это просто экран приветствия.
и схема моего файлового дерева:
index.php
init.php
header.php
footer.php
functions.php
posts.php
posts/
post1.php
post2.php