如何简单地更改导航链接上的内容单击而不是制作多个HTML页面

时间:2016-12-11 04:52:58

标签: php html css include

我一直在寻找好一个小时左右的时间,并且找不到任何可以回答我问题的内容。

问题是,我了解如何制作页面并执行:

的index.php

<?php
include 'head.php';
include 'nav.php';

include 'footer.php';
?>

但在我的 nav.php 中,我不确定<a href=""></a>的工作原理,以及如何在我的 index.php中包含不同的内容页面喜欢: contact.php registration.php 等。

我不知道怎么做才能如果我点击&#34;联系&#34;例如,导航链接,只有内容会发生变化,我不必像这样制作一个完整的HTML文件:<a href="bla.html">Contact</a>

希望我解释得足够好。如果有人可以给我一个参考或解释如何做到这一点,我将不胜感激。感谢你们。

2 个答案:

答案 0 :(得分:0)

我引用了你的回答,这是一行

  

我不知道怎么做才能如果我点击&#34;联系&#34;   例如,导航链接,只有内容会改变,而我   不必像这样制作一个完整的HTML文件:

<a> href="bla.html">Contact</a>

它不是应该的样子,我从你的问题得到的是,你想要一整页都是一样的

  

<?php include 'head.php'; include 'nav.php';

     

只有这个内容应该改变,而不是头部,不是导航,也不是页脚。

     

include 'footer.php'; ?>

我是对的吗?

如果它是你想要的,你应该放置一个php文件,无论名称是什么,index.php会更好。应该用php可以获得的东西来调用它自己的链接。

<a href="index.php?contact">Contact US</a>

并且在index.php中,如果其他方法更容易,你也会创建一个条件。

if($_GET['contact']){
place your html /php here
}
else if($_GET['about']){
place your html /php here
}
else{
include 'index.php';
exit();
}

我建议你不要这样做,现在每个人都可以做代码,但不能代码架构。

希望它能帮助你理解。

答案 1 :(得分:0)

您需要使用不同的视图。我相信你正在寻找一种方法来改变使用PHP的视图。一种方法是在网址中添加网页ID,例如'www.myweb.com/index.php?page=contact',并将其作为$_GET['page']接收。我认为这是使用php更改视图的最简单方法。这是index.php,将所有视图文件放在views文件夹中。

<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
</head>
<body>

    <?php
    include 'head.php';
    include 'nav.php';
    switch($_GET["page"]){
    case 'contact':
       include 'views/contact.php';
       break;
    case 'registration':
       include 'views/registration.php';
       break;
    case 'chat':
       include 'views/chat.php';
       break;

    }
    include 'footer.php';
    ?>

</body>
</html>

这将是您的nav.php;

<ul>
<li><a href="index.php?page=contact"> Contact </a></li>
<li><a href="index.php?page=registration"> registration </a></li>
</ul>