我从StackOverflow尝试了很多关于这个错误的事情,但没有运气。
我尝试显示评论的回复。回复评论与发布时的日期和小时一起显示,但发布回复的作者未显示。
行comments.php
$com_name = $row['comment_author'];
代码是:
<?php
$get_id = $_GET['post_id'];
$get_com = "select * from comments where post_id='$get_id'";
$run_com = mysqli_query($con, $get_com);
while($row=mysqli_fetch_array($run_com)){
$com = $row['comment'];
$com_name = $row['comment_author'];
$date = $row['date'];
echo "
<div id='comment'>
<h3>$com_name</h3><i>Said</i> on $date
<p>$com</p>
</div>
";
}
?>
希望能解决这个错误。
谢谢你,并致以最诚挚的问候。
答案 0 :(得分:0)
答案很简单。您的column_author
表格中根本不存在comments
列。您可能需要将评论表加入实际包含所需数据的表。
示例:
SELECT A.*, B.`name` as comment_author FROM `comments` A LEFT JOIN `users` B ON A.`user_id` = B.`id` WHERE A.`post_id`='$get_id'
请记住始终正确地逃避SQL查询。
答案 1 :(得分:0)
看起来没有名称为comment_author
的列。但是有字段user_id
。您需要将查询修改为以下(假设用户表users
包含字段user_name
和user_id
)
$get_com = "select c.date, c.comment, u.user_name as comment_author
from comments c inner join users u on c.user_id = u.user_id
where c.post_id='$get_id'";