1

我有两个表如下:

表1-联系人
-id(主键,AUTO_INCREMENT)
-firstname(varchar)
-lastname(varchar)
-email(varchar)

Table-2-comments
-id(主键,AUTO_INCREMENT)
-fullname(varchar)
-email(varchar)
-comment(text)
-date(varchar)

我想编写 php 和 MySQL 查询来获取和编写将连接到联系人的评论。我想得到如下输出:

url-contact.php?id=1
name-contact1
comment-contact1 很棒。

url-contact.php?id=2
name-contact2
comment-contact2 没问题。

我怎样才能做到这一点?首先,我需要编写评论,当从该联系人页面进入时,这些评论将连接到每个联系人。其次,当访问该联系人时,我需要获取该联系人的所有评论。

我很感激你现在的帮助。提前致谢。

4

2 回答 2

1

您应该设计您的数据库模式,以便这两个表具有自然连接。例如,每条评论都应该有一个contact_id,它是发布它的联系人的id。然后你可以做类似的事情

select * from comment where comment.contact_id = (在此处插入contact_id)

您不能使用联系人姓名,因为如果两个联系人的姓名相同怎么办?(例如,这在 Facebook 上经常发生)

于 2013-01-22T02:43:53.003 回答
1

假设您的表中已经有数据,我能想象的最好的做法是根据电子邮件选择它。

为了完成此操作,请执行 SELECT email FROM contacts WHERE id='id'。然后使用返回的结果,然后 SELECT * FROM comments WHERE email='email' 以检索所有相关的评论。

您唯一需要注意的是空电子邮件值,在这种情况下,您很可能需要使用 Patashu 建议的答案重新设计您的方法。

于 2013-01-22T02:50:24.473 回答