我在这里和互联网上查了一下,但我无法解决我的问题:
首先,我使用PHP include命令将其他文件夹中的文件包含到我的各种文件中(我希望我在这里有意义)。
现在谈到手头的问题:
在外观方面一切正常但除了文本加载正常外,图片/图标无法正确加载(见下图):
如您所见,图标显示为
当我点击所包含文件的href时,我得到了这个,就好像链接不存在一样:
最后,当我将文件移动到根目录时,一切都很完美!
但是当我将我的文件(稍后会包含其余的文件)移动到各自的文件夹时,我遇到了上述问题。
这是我做的两个例子:
案例1:所有文件都位于root_folder
中<?php include('../../include_files/footer.php'); ?>
include_files是要包含的所有文件所在的文件夹
(在这种情况下,我有:RootMenu - &gt; include_files - &gt; footer.php&lt; ---这是要包含的文件)
案例2 :当我将文件移动到文件夹时,我使用:
<?php include('../../include_files/footer.php'); ?>
(在这种情况下,我有:RootMenu - &gt;文件 - &gt; TestsRun - &gt; testfile.php&lt; ---这是使用包含的文件)
它加载要包含的文件,但带来上面提到的问题(我使用Apache - XAMPP)。
答案 0 :(得分:1)
当您在PHP中包含文件时,图像的路径和其他&#34;包括&#34;从当前工作目录开始。这是我追踪您的问题所做的工作。在脚本开头,添加以下行:
echo getcwd();
这将显示所有图像路径应从中开始的目录。使用includes时,包含的文件基本上成为主(或调用)脚本的一部分,因此您应该使用main或调用脚本的路径作为基本路径。
例如:
如果我的脚本&#34; main.php&#34;在/ scripts / stuff中。如果在main.php中我有一个包括诸如&#34; include ../../morestuff.php"。当前的工作目录仍然是/ scripts / stuff,因此在morestuff.php中的图像和其他文件的任何路径都将以/ scripts / stuff开头。我知道,我解释得很糟糕。