PHP-问题包括我的索引网站内的页眉和页脚

时间:2019-02-08 09:09:50

标签: php include

我在index.php上包含header.php和footer.php有问题

网站的结构是这样的。

我有一个index.php页面,我还有4个文件夹(关于我们),(支持),(资产),(包括),它们在这些文件夹中有页面。在(包括)文件夹中,我有header.php和footer.php。在我的(资产)文件夹中,我有2个文件夹,分别是(css),(js)。在我的(css)文件夹中有我的style.css文件,在(js)文件夹中有我的custom.js文件。

在我的(包括)文件夹中,header.php文件包括这样的style.css。 。此外,在我的(包含)文件夹中,footer.php文件包括这样的custom.js。

此外,在我的(关于我们)文件夹中,有about-us.php页面。当我使用<?php include "../includes/header.php"; ?><?php include "../includes/footer.php"; ?>时,一切正常。

我的问题是这个。当我尝试在我的index.php页面中包含header.php或footer.php时,它们将不起作用。我尝试将它们像<?php include “/includes/header.php"; ?><?php include "includes/footer.php"; ?>包括在内,但它们不起作用。我尝试了不同的方法,但是没有任何效果。问题是我可以在文件夹内的子页面中包含header.php和footer.php,但不能在文件夹外的index.php中包含header.php和footer.php。另外,如果我必须对页眉或页脚进行任何更改,我将不得不对其进行两次更改,其中一项将对硬编码的index.php进行更改,另一项在包含在该子项中的header.php或footer.php中进行更改。页面。

如何做到这一点,以便可以在index.php页面中包含(包括)中的header.php和footer.php,还可以处理(关于我们)文件夹中的about-us.php页面?

谢谢。

2 个答案:

答案 0 :(得分:0)

当您在文件夹结构的不同级别之间跳动时,参考文件非常困难[(不直观)。您可以写一本有关相对和绝对文件路径的书。

如果可能更好,请在您的网站太大而无法创建自己的config.php文件之前,为您的网站定义一个适当的基本URL,然后将其包含在您尝试的每个页面中供参考。

例如。在您网站的根目录中,创建一个名为config.php的文件并使用以下命令:

<?php
define("ROOT_PATH", $_SERVER["DOCUMENT_ROOT"]);

然后在所有其他文件中,您可以先引用config.php文件,该文件将为该文档定义ROOT_PATH,然后调用其他文件。

所以在您的header.php文件中

<?php 
include "./config.php";
include(ROOT_PATH . "/assets/css/style.css");

然后,当您从index.php调用header.php时,header.php将具有指向CSS文件的绝对路径以供参考。

我希望我已经解释清楚了。

编辑/添加: config.php文件是对许多其他项目以及定义URL的任何PHP项目的便捷补充。您可以将数据库连接保留在其中,可以将经常使用的静态事物数组保存在其中,等等。它们成为了始终使用事物的“去处”。

答案 1 :(得分:-1)

这将起作用。

include "./includes/header.php";

否则,您可以在header.php中包含footer.phpindex.php的完整文件路径位置