Php 如何使用HTML将菜单文件包含并链接到每个网页中?

Php 如何使用HTML将菜单文件包含并链接到每个网页中?,php,html,css,menu,menubar,Php,Html,Css,Menu,Menubar,我研究了一些关于php、javascript、iFrame等的答案,但我尝试了一些,但没有一个有效。我不熟悉HTML编码。。和一般的编码 <link rel="menu" href="menu.html"> does nothing <!--#include virtual="/menu.html" --> does nothing (presumably because its a comment?) <iframe src="page.html">&l

我研究了一些关于php、javascript、iFrame等的答案,但我尝试了一些,但没有一个有效。我不熟悉HTML编码。。和一般的编码

<link rel="menu" href="menu.html"> does nothing
<!--#include virtual="/menu.html" --> does nothing (presumably because its a comment?) 

<iframe src="page.html"></iframe> 
什么都不做
什么都不做(大概是因为这是一个评论?)
或对象。。。两者都将菜单放在一个愚蠢的小滚动框中

我想在我的页面上运行我的菜单,就像它是C语言中的一个函数一样。在这里,我可以包含它,它就在那里,或者只是链接它

谢谢你的帮助! 瑞安

网页文件:biology.html 菜单文件:menu.html


普通中等教育证书
A-Levels
大学
更多

您可以使用php在其他页面上包含文件。下面是一些示例代码,可以帮助您开始:

<?php
    require_once('menu.php');
?>

您可以将其适当地放在HTML页面中,但是必须确保可以在服务器上处理php,并且包含php代码的文件必须以
.php
扩展名结尾

还有其他通过php包含文件的方法,请参见此处: 和

编辑-我不太喜欢这种方法,但它可以在Github页面上使用。

使用定义为js变量的菜单创建一个名为nav.js的文件,然后使用javascript将其插入在每个页面上创建的空div中。用这种方法来更新你的nav,你只需要编辑nav.js就行了,虽然不漂亮,但它可以工作

nav.js

var navigation = "<nav>";
navigation +=   "<ul>";
navigation +=   "<li>Home</li>";
navigation +=   "<li>About</li>";
navigation +=   "</ul>";
navigation +=   "</nav>";

document.getElementById("navigation").innerHTML = navigation;
var导航=”;
导航+=“
    ”; 导航+=“
  • 主页”
  • ”; 导航+=“
  • 关于
  • ”; 导航+=“
”; 导航+=”; document.getElementById(“导航”).innerHTML=导航;
其他页面

<div id="navigation"></div>
<!--rest of page goes here.-->
<script src="nav.js"></script>


Fiddle:

根据您希望/想要/需要使用的后端技术,有多种方法可以将一个文件包含到另一个文件中

PHP 在php中最常用的方法是在php文件中使用
include
require
语句

在您的特定情况下,
biology.html
文件必须转换为
biology.php
文件,然后您可以添加相关代码以包含该文件:

<?php include('menu.php');?>

关于服务器端包含的更多信息可以在wikipedia上找到:

最简单的方法是php包含,只有通过将文件重命名为.php才能实现这一点,如果文件不再是html文件,这会影响html编码吗?不。您可以在.php文件扩展名中使用html。但是,如果您没有运行Apache这样的web服务器,您的PHP将无法运行,因此我将其重命名为biology.PHP。。我还编辑了index.html文件,因此指向“biology”的链接现在转到“biology.php”,而不是以前的“biology.html”。。。现在,当我单击biology链接时,它是一个下载,而不是带我进入biology页面?它不应该作为链接放置,此php代码将有效地“插入”您的biology.php代码到您需要放置的位置。确保将index.html文件重命名为index.php。因此,文件告诉服务器将php处理为html。一个很好的提示:如果文件中的任何地方都有php,它必须以.php结尾(在这种情况下)通过链接,我的意思是在我的索引页(从主页到网站)上有一个名为“biology”的链接,它以前把我带到了网页(biology.html),显然,因为它重命名为biology.php,我必须将链接目标更改为biology.php否?因为biology.html已经不存在了。但是当点击生物学的链接时,它会下载php文件lolIm new to coding等等。我不知道你所说的“真正的网络服务器”是什么意思。。我使用github托管并拥有自己的域名请参阅我答案的最后一段。你不能在Github页面上使用PHP,它们只用于静态托管。更新了一个JS解决方案,可以在本地环境和Github页面上使用。虽然很难看,但效果很好。你的菜单代码与此无关,只需按照我给出的JS说明操作即可。这里的示例:唯一的区别是,您希望将菜单保存为单独的js文件,然后将其包含在页面中,因此只需更新菜单一次。只需选择菜单的每一行,并按上面的+=将其添加到变量中即可。以下是导航的技巧。很明显,这些课程是不起作用的。
<!--#include file="menu.html" -->