我正在给学生系统添加一个反馈系统,这个想法是老师可以访问学生列表并可以对该学生发表评论。
表大师:id
username
表评论:id
id_master
id_student
text
然后我去student.php?id=1
显示表comments
中的所有结果:
<?php
// See comments student
function SeeComments($id) {
$db = DB::getInstance();
$query = $db->query("SELECT * FROM comments WHERE id_student = ?", array($id));
$results = $query->results();
return ($results);
}
$id = $_GET['id'];
$Data = SeeComments($id);
foreach ($Data as $v1) {
echo "<b>Username - Text</b><br>";
echo $v1->id_master." - ".$v1->text."<br>";
echo "---------------------<br>";
}
?>
因为我可以得到表masters
的username
来显示结果而不是id
,如:
echo $v1->username." - ".$v1->text."<br>";
可以通过内部连接从masters
表中获取相关数据。
$query = $db->query("SELECT comments.*, masters.username
FROM comments
INNER JOIN masters ON comments.id_master = masters.id
WHERE comments.id_student = ?", array($id));
现在您应该能够通过:$v1->username
获得用户名。
你可以在这里阅读更多关于内部连接的信息:http://www.w3schools.com/sql/sql_join_inner.asp