PHP阻止我的页面的其余部分正确加载

时间:2017-04-30 21:28:34

标签: php

我正在为一所学校项目编写书店。我们上个学期用html开始了。本学期我们因动态原因将其转换为php。我尽可能地模块化代码,但是当我把php的功能部分放入其中时,它会阻止php代码中的所有以下html显示。据我所知,我已经做好了所有事情,但找不到问题。

这是我的index.php中的php调用

<aside class="lSideMenu">
    <table>
        <tr><td><h3>Categories</h3></td></tr>
        <?php
            include_once 'getGenres.php';
            popGenres();
        ?>
        <tr><td><a href="humorbook.html">Humor</a></td></tr>
    </table>
</aside>

我在调用测试之后离开了表格行并且没有显示,但是当我查看调试窗口时,表格和旁边的标签就在那里。之后还有其他代码也没有填充,我的css会中断。

这是getGenres.php的php功能

<?php
/**
 * Created by PhpStorm.
 * User: PoeDawg
 * Date: 4/5/2017
 * Time: 2:51 PM
 */
function db_connect(){
    $host = 'localhost';
    $uname = 'root';
    $pass = 'root';


    $link = new mysqli($host, $uname, $pass);

    if (!$link) {
        die('Could not connect: ' . mysqli_error($link));
    }
    return $link;
}

function popGenres(){

    $link = db_connect();
    $dbname = 'volga_db';

    $db_selected = mysqli_select_db($link, $dbname);
    if (!$db_selected) {
        die('Could not connect to database: ' . mysqli_error($link));
    }

    $query = 'SELECT * FROM tblgenres';
    $result = mysqli_query($link, $query);

    if ( $result ) {
        while ( $row = $result->fetch_assoc() ) {
            echo "<tr><td><a href=\"booklist.html\">" . $row['genreName'] . "</a></td></tr>";
        }

        $result->close();
    }

    mysqli_close()($link);
}

它完成了它应该填充的类型列表,它只是阻止函数调用下面的内容在浏览器中加载。如果我把php调用部分拿出来,页面就可以了。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

您的最后一行代码应如下所示,

 mysqli_close($link);