【问题标题】:php/html multi-page navbar?php/html 多页导航栏?
【发布时间】:2016-10-17 18:29:50
【问题描述】:

对不起,如果我听起来像个白痴,但我对 php 比较陌生。

基本上,我想要一个导航栏,可以在我网站的所有页面上同步。

到目前为止,我所拥有的是:

navbar.php

<?php
echo '<link rel="stylesheet" type="text/css" href="style.css"> -
<ul> -
<li><a href="index.html"><div id="nav"><span id="middle">Home</span></div></a> -
<li><a href="art.html"><div id="nav"><span id="middle">Art</span></div></a></li> -
<li><a href="games.html"><div id="nav"><span id="middle">Games</span></div></a></li> -
<li><a href="wish.html"><div id="nav"><span id="middle">Wish List</span></div></a></li> -
<li><a href="dw.html"><div id="nav"><span id="middle">Doctor Who</span></div></a></li> -
</ul>'; 
?>

index.html

<!DOCTYPE html>
<html>

<head>
  <title>Colin Site</title>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
  <link rel="stylesheet" type="text/css" href="style.css">
  <style>
    p {
      font-size: 150%;
    }
  </style>
</head>

<body>
  <div class="navcontain">
    <?php include "nav.php"; ?>
  </div>
  <br>
  <br>
  <br>
  <h2>Welcome to my website, where I do random things</h2>
</body>

</html>

style.css

#navbar {
  width: 100%;
}
#nav {
  background-color: #848482;
  width: 110px;
  height: 40px;
  text-align: center;
  font-size: 100%;
  color: white;
}
#navcontain {
  position: relative;
  top: 1%;
  background-color: alpha;
  width: 100%;
}

当我访问我的网站时,我的导航栏应该是一个空白区域。

提前致谢

【问题讨论】:

  • 如果 navbar.php 不包含任何逻辑,可以省略 echo 语句,直接将 HTML 添加到页面中。
  • 我的回答对你有用吗?如果是,请接受您认为正确的答案
  • 是的,你的答案有效。直到现在我才意识到自己有多愚蠢,非常感谢!

标签: php html css navbar


【解决方案1】:

您不能在 HTML 文件中执行 PHP 代码。查看包含navbar.php 的文件的扩展名,它是.html 对吗?那就错了。为了使其正常工作,将其重命名为index.php

【讨论】:

  • 从技术上讲,您并不完全正确。 默认情况下,不预处理 HTML 文件,但可以更改:stackoverflow.com/questions/11312316/…
  • 我相信这不是要走的路,因为您通过解释器发送一个简单的 HTML 页面只是为了不更改扩展名:-) 因此所有 .html 页面都将通过相同的解释器,即使他们没有一行 PHP 代码
【解决方案2】:

您的 HTML 中有 &lt;?php include "nav.php"; ?&gt;,但根据您的问题,该文件名为 navbar.php....

(是的,你的主文件必须有一个 php 结尾,正如@ReynierPM 所写)

【讨论】:

    【解决方案3】:

    在 html 文件中使用 php 是不可能的,虽然你可以使用 AJAX / JQuery 将 php 加载到网页中,这里有一个例子

    index.html

    <html>
        <head>
            <script src="jquery.js"></script> <!-- You can get JQuery at http://jquery.com -->
        </head>
        <body>
            <script>
                $(document).ready(function(){
                    $.ajaxSetup({cache:false});
                    $("#nav").load("nav.php");
                });
            </script>
            <div id="nav"></div>
        </body>
    </html>
    

    【讨论】:

    • 很抱歉花了这么长时间才回复,但这很有效。谢谢!
    • 没问题,随意把这个作为答案@BRFNGRNBWS
    猜你喜欢
    • 2022-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-28
    • 2015-01-24
    • 1970-01-01
    • 2016-07-07
    相关资源
    最近更新 更多