一个文件包含另一个目录中有链接的文件,如何设置链接的相对路径?
A file include a file in another directory which have links, How to set relative path for links?
我的工程目录如下
root
css
img
src
login
login.php
dashboard
basic
header.php
footer.php
profile.php
manage.php
department
add_depart.php
configuration
config.php
这里的header.php
包括profile.php
、manage.php
、add_depart.php
和config.php
.
在 header.php
中有指向保存在 basic
文件夹中的其他文件的链接。我的问题是当我在 add_depart.php
和 config.php
中包含 header.php
时,链接不起作用。我知道只包含将文件复制到 add_depart.php
。链接无法在部门文件夹中访问。
如何设置链接的相对路径 header.php
可以从 basic、department 和 configuration 文件夹访问 header 提供的链接。
我也试过 getcwd()
, dirname(__FILE__)
.
请帮忙。
Header.php
$path_r = $_SERVER['DOCUMENT_ROOT'];
$path_l = $path_r . '/root/src/dashboard/basic/';
<li class="dropdown">
<a href="#" data-target="#" class="dropdown-toggle" data-toggle="dropdown"> Settings <b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="<?php echo $path_l ?>/profile.php">Profile</a></li>
<li><a href="<?php echo $path_l ?>/config.php">Config</a></li>
<li class="divider"></li>
<li><a href="logout.php">Logout</a></li>
</ul>
</li>
您将文件系统路径与 URL 路径混淆了。
$_SERVER['DOCUMENT_ROOT']
包含服务器(文件系统)上文档根目录的绝对路径,而不是 URL。 getcwd()
和 dirname()
.
也是如此
只需在 URL 开头加上斜线:<a href="/path/to/profile.php"
等等,无论您在何处添加 URL,它们都是一样的。
我的工程目录如下
root
css
img
src
login
login.php
dashboard
basic
header.php
footer.php
profile.php
manage.php
department
add_depart.php
configuration
config.php
这里的header.php
包括profile.php
、manage.php
、add_depart.php
和config.php
.
在 header.php
中有指向保存在 basic
文件夹中的其他文件的链接。我的问题是当我在 add_depart.php
和 config.php
中包含 header.php
时,链接不起作用。我知道只包含将文件复制到 add_depart.php
。链接无法在部门文件夹中访问。
如何设置链接的相对路径 header.php
可以从 basic、department 和 configuration 文件夹访问 header 提供的链接。
我也试过 getcwd()
, dirname(__FILE__)
.
请帮忙。
Header.php
$path_r = $_SERVER['DOCUMENT_ROOT'];
$path_l = $path_r . '/root/src/dashboard/basic/';
<li class="dropdown">
<a href="#" data-target="#" class="dropdown-toggle" data-toggle="dropdown"> Settings <b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="<?php echo $path_l ?>/profile.php">Profile</a></li>
<li><a href="<?php echo $path_l ?>/config.php">Config</a></li>
<li class="divider"></li>
<li><a href="logout.php">Logout</a></li>
</ul>
</li>
您将文件系统路径与 URL 路径混淆了。
$_SERVER['DOCUMENT_ROOT']
包含服务器(文件系统)上文档根目录的绝对路径,而不是 URL。 getcwd()
和 dirname()
.
只需在 URL 开头加上斜线:<a href="/path/to/profile.php"
等等,无论您在何处添加 URL,它们都是一样的。