插入PHP代码后Div消失

时间:2015-02-14 14:33:33

标签: php html

我有两个DIV正确并排浮动,但在嵌入php代码后,整个页面都不会显示任何内容。即使我删除PHP代码,页面也不会再显示。下面的代码是针对正确浮动的div。

<div style="float:right;">
        <?php
            echo "<div>
                    <head>
                        <link rel='stylesheet' type='text/css' href='chatbox/style/cb_style.css'>
                        <script type='text/javascript' src='chatbox/ajax.js'></script>
                        <script type='text/javascript' src='chatbox/chatbox.js'></script>
                    </head>
                <div>";
            ?>

            <div id="container">
                <div id="usersOnLine">
                    <div style="font-weight:bold;margin-top:35%;">Online Users</div>
                    <div style="height:82%;">
                        <?php
                            if (!empty($friends)) {
                                foreach ($friends as $friend) {
                                    $friend_name = htmlentities($user['username'], ENT_NOQUOTES);
                                    echo "<span>{$friend_name}</span>";
                                }
                            }
                        ?>
                    </div>
                    <form method="post" action="">
                        <input type='text' placeholder='search' style='width:145px;'/><a href='#'><span class='glyphicon glyphicon-search'></span></a>
                    </form>
                </div>
                <div id="chat_search">
                    <un>
                </div>
            </div>
        </div>
        <div style="clear:both;"></div>

1 个答案:

答案 0 :(得分:1)

由于您要在DOM中添加<head>元素,因此应删除周围的divhead,并将第一大块php代码放入页面的<head>部分。当您以这种方式引入新的<head>元素时,浏览器会感到困惑。

编辑:进一步解释,可能的例子......

您可以将这些新的样式表和js条目添加到head中,方法是将它们附加到标题包含中(假设您使用的是主html标题的包含 - 在本例中,我们称之为“header.php” “,因为这很常见)

<?php 
    $addme = '<link rel="stylesheet" type="text/css" href="chatbox/style/cb_style.css">
              <script type="text/javascript" src="chatbox/ajax.js"></script>
              <script type="text/javascript" src="chatbox/chatbox.js"></script></head>';
    ob_start(); // start a buffer
    include("header.php"); 
    $contents = ob_get_contents(); // buffer the contents of header.php
    ob_end_clean(); // end & clean the buffer

    // replace the closing tag with the added stuff
    echo str_replace('</head>', $addme, $contents);

?>