使用PHP中的绝对链接包含标题

时间:2013-05-03 04:27:57

标签: php html

我想在每个页面中使用PHP包含一个标题,这样当我编辑标题时,我不必在每个页面上更改它。但是我很确定如果我这样做,相对链接将根据包含PHP的页面来执行。使用绝对链接执行此操作是否有任何问题?很抱歉,如果这是一个简单的问题,只是想知道是否有任何与此相关的规则。

<header>
            <div class="navbar">
                <a href="/"><img style="margin:10px;" src="../images/logo.png" alt="logo"/></a>
                <a href="/"><img style="position:relative;bottom:14px;" src="../images/line.png" alt="line"/> </a>
                <a href="/"><img class="navbaricon" id="one" src="../images/home.png" alt="home"/></a>
                <a href="JavaScript:void(0);"><img class="navbaricon" id="two" src="../images/artist.png" alt="artists"/></a>
                <a href="../releases"><img class="navbaricon" id="three" src="../images/releases.png" alt="releases"/></a>
                <a href="../join"><img class="navbaricon" id="four" src="../images/join.png" alt="join"/></a>
            </div>
            <div class="artists">
                <div class="artistlinks">
                <p>Brady Hartvigsen</p>
                <a href="../artists/bradyhartvigsen"><img src="../images/artists/bradymain.jpg" alt="Brady Hartvigsen"/></a>
                <p>Catalyst</p>
                <a href="../artists/catalyst"><img src="../images/artists/catalystmain.jpg" alt="Catalyst"/></a>
                <p>Emmi Moffitt</p>
                <a href="../artists/emmimoffitt"><img src="../images/artists/emmimain.jpg" alt="Emmi Moffitt"/></a>
                <p>Frederik Jyll</p>
                <a href="../artists/frederikjyll"><img src="../images/artists/fredmain.jpg" alt="Frederik Jyll"/></a>
                <p>J.R. Hansen</p>
                <a href="../artists/jrhansen"><img src="../images/artists/jrmain.jpg" alt="JR Hansen"/></a>
                <p>Kate Berry</p>
                <a href="../artists/kateberry"><img src="../images/artists/katemain.jpg" alt="Kate Berry"/></a>
                <p>Ryan Cluff</p>
                <a href="../artists/ryancluff"><img src="../images/artists/ryanmain.jpg" alt="Ryan Cluff"/></a>
                <p>Silter</p>
                <a href="../artists/silter"><img src="../images/artists/siltermain.jpg" alt="Silter"/></a>
                </div>
            </div>
            <script>
                $("a:nth-child(4)").click(function () {
                     $(".artists").animate({width:'toggle'},500);
                });
            </script>       
        </header>

这是我的标题目前的样子

2 个答案:

答案 0 :(得分:2)

您可以使用绝对路径和相对路径。使用相对路径时,您必须确保路径与您所包含的文件相对。

我建议使用相对路径,因为将站点移动到服务器上的另一台服务器或路径会更容易。

此外,您可能正在谈论相对的HTML链接。我通过在主文件中设置“rel”参数来解决这个问题。

此示例中解决了两种类型的亲属:

/mysite/webroot/index.php

<?php
define('RELPATH','');
include_once(RELPATH.'../includes/header.inc.php');
...
?>

/mysite/webroot/otherpage/index.php

<?php
define('RELPATH','../');
include_once(RELPATH.'../includes/header.inc.php');
...
?>

/mysite/includes/header.inc.php

<html>
....
<body>
..
<a href="<?php print RELPATH;?>">Front page</a><br />
<a href="<?php print RELPATH;?>otherpage/">Other page</a><br />

答案 1 :(得分:1)

我相信你指的是在另一个文件中包含一个PHP文件。

是否有规则?不,但最好坚持相对路径。请注意以下事项:

  1. 如果对文件夹/子文件夹使用绝对路径,则在将站点移动到其他位置(即使在同一域中)时也会遇到问题。所以坚持相对参考。

  2. 有某种“逃避路线”,这样如果有人试图直接读取包含文件,就不应该使系统容易受到攻击。例如,您可以将变量设置为某个值,并在文件中检查它。这不一定是安全问题,但它可能会阻止网站“以意想不到的方式行事”。

  3. 将php文件包含在另一个php文件中的示例...

    步骤: 1.创建一个单独的文件(例如:myheader.php)。请记住,这必须是PHP。不是HTML。 2.将标题粘贴在其中。保存。 3.在需要调用它的文件中,包括以下行或类似内容:

    <?php include "myheader.php">
    

    如果文件位于当前文件夹上方的文件夹中,请使用以下内容:

    <?php include "../myheader.php">
    

    要在当前文件夹上方两级,请使用:

    <?php include "../../myheader.php">
    

    如果文件位于当前文件夹中的子文件夹中,请使用:

    <?php include "SubFolderName/myheader.php">