SQL语法;查看与您的MariaDB服务器版本对应的手册,以获得正确的语法

时间:2016-03-04 04:46:02

标签: php mysql mariadb

查询失败您的SQL语法中有错误;查看与您的MariaDB服务器版本对应的手册,以便在第1行'comment_status ='Approved'ORDER BY comment_id DESC'附近使用正确的语法

这是我的代码

<?php
    $query = "SELECT * FROM comments WHERE comment_post_id = {$the_post_id}";
    $query .= "AND comment_status = 'Approved' ";
    $query .= "ORDER BY comment_id DESC";
    $select_comment_query = mysqli_query($connection, $query);
    if(!$select_comment_query){
        die('Query Failed'. mysqli_error($connection));
    }
    while ($row = mysqli_fetch_array($select_comment_query)) {
        $comment_date = $row['comment_date'];
        $comment_content = $row['comment_content'];
        $comment_author = $row['comment_author'];
?>

<!-- Comments -->
<div class="media">
    <a class="pull-left" href="#">
        <img class="media-object" src="http://placehold.it/64x64" alt="">
    </a>
    <div class="media-body">
        <h4 class="media-heading"><?php echo $comment_author; ?>
            <small><?php echo $comment_date; ?></small>
        </h4>
        <?php echo $comment_content; ?>
    </div>
</div>

<?php } ?>

如果我禁用以下代码,则可以使用

    $query .= "AND comment_status = 'Approved' ";
    $query .= "ORDER BY comment_id DESC";

谢谢

1 个答案:

答案 0 :(得分:2)

尝试包含空格:

$query .= " AND comment_status = 'Approved' ";

注意:如果要调试这些类型的问题,请在运行之前输出查询字符串。问题通常很明显。