PHP MySQLi查询函数解析错误


PHP MySQLi query function parsed incorrectly

我正试图从MySQL数据库中获取数据,并将其显示在一个简单的网页上
然而,当我将PHP代码添加到.html文件中时,看起来代码并没有被解析为PHP
下面的代码连接到数据库(有效),我输入一个查询,然后获取结果
然而,给定输出,看起来$conn->query($query)中的->几乎被输入为?>

下面代码产生的页面显示了这三行文本:

 query($query)) {while ($row = $result->fetch_assoc()) {echo ' 
'.$row['Title'].'
';>$result->free();}else"fail";}?>

这符合我想要的格式,但显然不是我想要的
然而,当我删除第二行直到$conn->的所有内容时,我从这段代码中得到了相同的结果页
这给我的印象是$conn->后面的代码根本不是PHP代码
我认为同样重要的是要注意,我在页面的另一个部分没有这个问题,即创建数据库连接可以很好地工作,查询后面的代码也可以像我所期望的那样进行解析。

我的假设正确吗?我该如何反驳?或者是某个明显的遗漏导致了这个错误?

<div class="col-sm-8 blog-main">
    <?php
    $servername = "localhost";
    $username = "root";
    $password = "marvin";
    $dbname = "blogpostdb";
    $conn = new mysqli($servername, $username, $password, $dbname);
    $query = "SELECT * FROM posts"; 
    if ($result = $conn->query($query)) {
        while ($row = $result->fetch_assoc()) {
        echo '<div class="blog-post"> 
              <h2 class="blog-post-title">'. $row['Title'] .'</h2></div>';
        }
    $result->free();
    }
    else{
    echo "fail";
    }
    ?>
    </div><!-- /.blog-main -->

您需要将扩展名从.html更改为.php
扩展名为.html的文件不会解析PHP,除非Web服务器配置为这样做。