html和body标记在我将它们告知PHP之前关闭


html and body tags close before I tell them to PHP

因此,我正在重新设计一些工作中的工具,以获得有凝聚力的用户体验,我有两个文件将包含在其余文件中。它们是页眉和页脚。它们独立工作,但当我试图将它们包含在同一个文件中时,页脚不会显示(我甚至尝试将它们放在一个包含文件中)。

这是标题:

<?php
function pageHeader($title){
    $html = "<!DOCTYPE html>
    <html>
    <head>
        <link href='../../bootstrap/css/bootstrap.css' rel='stylesheet'>
        <title>$title</title>
    </head>
    <body>
        <div class='navbar navbar-fixed-top'>
            <div class='navbar-inner'>
                <div class='container-fluid'>
                    <a class='brand' href='/platform'>Platform Tools</a>
                    <div class='btn-group pull-right'>
                        <a class='btn dropdown-toggle' data-toggle='dropdown' href='#'>
                            <i class='icon-user'></i>
                            Username
                            <span class='caret'/>
                        </a>
                        <ul class='dropdown-menu'>
                            <li>
                                <a href='#'>Profile</a>
                            </li>
                            <li class='divider'/>
                            <li>
                                <a href='#'>Sign Out</a>
                            </li>
                        </ul>
                    </div>
                    <div class='nav-collapse'>
                        <ul class='nav'>
                            <li class='active'>
                                <a href='#'>
                                    <i class='icon-home icon-white'></i>
                                    APEX Home
                                </a>
                            </li>
                            <li>
                                <a href='/platform/cms'>
                                    <i class='icon-home icon-white'></i>
                                    CMS Home
                                </a>
                            </li>
                            <li>
                                <a href='/platform/outbound'>
                                    <i class='icon-home icon-white'></i>
                                    Outbound Home
                                </a>
                            </li>
                            <li>
                                <a href='/platform/urs'>
                                    <i class='icon-home icon-white'></i>
                                    URS Home
                                </a>
                            </li>
                            <li>
                                <a href='#bug'>
                                    <i class='con-fire icon-white'></i>
                                    Report a problem
                                </a>
                            </li>
                        </ul>
                    </div>
                </div>
            </div>
        </div>
        <script src='/bootstrap/js/jquery.js'/>
        <script src='/bootstrap/js/bootstrap-transition.js'/>
        <script src='/bootstrap/js/bootstrap-alert.js'/>
        <script src='/bootstrap/js/bootstrap-modal.js'/>
        <script src='/bootstrap/js/bootstrap-dropdown.js'/>
        <script src='/bootstrap/js/bootstrap-scrollspy.js'/>
        <script src='/bootstrap/js/bootstrap-tab.js'/>
        <script src='/bootstrap/js/bootstrap-tooltip.js'/>
        <script src='/bootstrap/js/bootstrap-popover.js'/>
        <script src='/bootstrap/js/bootstrap-button.js'/>
        <script src='/bootstrap/js/bootstrap-collapse.js'/>
        <script src='/bootstrap/js/bootstrap-carousel.js'/>
        <script src='/bootstrap/js/bootstrap-typeahead.js'/>  ";
        return $html;
        }
?>

下面是页脚:

<?php
function pageFooter(){
    $html ="
    <nav class='footer'>
        <a href='#'>Apex</a>
        <a href='#'>Contest</a>
        <a href='#'>Outbound</a>
        <a href='#'>URS</a>
        <a href='#'>Third Party Tools</a>
        <a href='#'>Report a Problem</a>
        <a href='#'>Our SLA</a>
        <a href='#'>Contact</a>
    </nav>
    </body>
    </html> ";
    return $html;
    }
?>

当我将它们包含在我的FrontDoor.php文件中时,它看起来是这样的(将更改为相对路径):

<?php include('C:'xampp'htdocs'webapps'Redesign'Oreo'src'Header.php'); ?>
<?php include('C:'xampp'htdocs'webapps'Redesign'Oreo'src'Footer.php'); ?>
<?php echo pageHeader('Platform Tools'); ?>
<?php echo pageFooter(); ?> 

当我尝试运行它时,它会运行页眉,然后关闭正文和html标记,而不运行页脚。

有什么建议吗?谢谢?

您可以尝试将脚本标记从<script src='/bootstrap/js/bootstrap-typeahead.js'/>更改为<script src='/bootstrap/js/bootstrap-typeahead.js'></script>

好吧,我一直都这么做,

基本上我做的是这个

<?php include_once('Header.php'); ?>
Any Page content
<?php include_once('Footer.php'); ?>

标题包括

<html><head></head><body><div class="some-div">

页脚包括

</div></body></html>

通过这种方式,您可以获得恒定的页眉和页脚,不需要制作单独的函数来关闭php文档,这是没有效率的。

编辑:
例如,如果您有index.php,它包含文件header.php和footer.php。

我检查了代码,它呈现得很完美不是强迫,但你应该按照@Toby要求关闭script标签的方式。

我确信这是你放置脚本标签的方式的问题。请改正,一切都会好起来的。

编辑

当您在浏览器中执行视图源代码时,页脚会按预期显示在HTML源代码中。只有在渲染页脚时才不显示,但一旦您更正了添加脚本标记的方式,即放置正确的端</script>浏览器将正确渲染它。