有人可以帮助我,因为我是PHP和MYSQLI的新手
我试图为下面的电影页面示例制作评论系统
数据库结构
评论表
id int(11) No None AUTO_INCREMENT
movie_id int(11) No None
user_id int(11) No None
message varchar(1000) No None
timestamp timestamp No CURRENT_TIMESTAMP
用户表
id int(50) No None AUTO_INCREMENT
username varchar(50) No None
email varchar(100) No None
group varchar(20) No None
password varchar(20) No None
PHP代码
<?php
$comments = mysqli_query($con,"SELECT * FROM `comments` ORDER BY `timestamp` DESC");
while($comment = mysqli_fetch_array($comments)) {
?>
<a href="www.mysite.com/movie.php?id=<?php echo $comment['movie_id']; ?>"><?php echo $comment['message']; ?></a>
<?php
}
mysqli_close($con);
?>
所以我要做的是使用username
Users table
从user_id
获取Comments table
有人可以告诉我如何获取它们以及如何回应它们。
答案 0 :(得分:1)
SELECT * FROM
`comments` c
JOIN `users` u
ON c.user_id = u.id
ORDER BY `timestamp` DESC
在你的while循环中,用户名将以$ comment ['username']的形式提供。 您可以在此处找到有关mysql join的更多信息:http://dev.mysql.com/doc/refman/5.0/en/join.html
答案 1 :(得分:0)
简单方法:
"SELECT * FROM users,comments WHERE users.id=comments.id ORDER BY timestamp DESC"
这应该有效。