您好我最近刚刚使用我的Web服务器将所有.html文件作为.php文件运行,现在允许我使用php include函数,这非常有用。
但是我有多个子目录,每个目录中都有多个文件。
主页 --banners --banner2.html --banner2.html --signs --sign1.html
等等。这里的问题是我试图使用包括我的顶部导航栏。当我在子文件中包含栏时,例如banner2.html它不会正确链接。
nav.php
<ul class="nav navbar-nav">
<li>
<a href="about.html">About</a>
</li>
<li>
<a href="Services.html">Services</a>
</li>
<li>
<a href="index.php">Contact</a>
</li>
<li>
<a href="Login/Sign-In.html">Login</a>
</li>
<li>
<a href="Login/logout.php">Logout</a>
</li>
<li>
<a href="PHP/Cart.php"><img src="images/Cart.gif" style="height: 20px; width:20px;"> Cart</a>
</li>
</ul>
导航栏中的是about.html的链接,通常我会做
<a href="../about.html">about</a>
然而,当每个文件要共享同一个导航栏时,我无法做到这一点。 我该如何解决这个问题?
答案 0 :(得分:1)
我已经回答了自己的追求,甚至对提出这个问题感到愚蠢。我刚刚使用了absoulte路径
nav.php
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav">
<li>
<a href="http://domain.com/about.html">About</a>
</li>
<li>
<a href="http://domain.com/Services.html">Services</a>
</li>
<li>
<a href="http://domain.com/index.php">Contact</a>
</li>
<li>
<a href="http://domain.com/Login/Sign-In.html">Login</a>
</li>
<li>
<a href="http://domain.com/Login/logout.php">Logout</a>
</li>
<li>
<a href="http://domain.com/PHP/Cart.php"><img src="images/Cart.gif" style="height: 20px; width:20px;"> Cart</a>
</li>
</ul>
答案 1 :(得分:0)
有一些方法可以解决这个问题,其中之一是:
使用$_SERVER["DOCUMENT_ROOT"]
- 我们可以使用此变量来生成相对于服务器根目录的所有包含,而不是当前工作目录(脚本的目录)。然后我们会为我们所有的包含使用类似的东西:
`<a href="<?php echo $_SERVER["DOCUMENT_ROOT"].'/path/to/about.html' ?>">about</a>`
另外,您应该查看this post。
答案 2 :(得分:0)
您可以使用根目录的相对路径/file.ext
实施例:
<a href="/about.html">About</a>