内部联接

时间:2016-12-18 09:41:20

标签: php mysql

尝试访问CDID以在查询中设置,然后稍后使用GET在下一页上检索它。

我始终认为INNER JOIN cdreview ON cdreview.CDID=cd.CDID会将CDID组合在一起,因为它们是相同的值,然后我可以通过在查询中将其设置为$cdid = $row['CDID'];来访问该值,但我会继续{ {1}}错误消息。

我是菜鸟,所以任何帮助都会受到赞赏。

Undefined index: CDID

2 个答案:

答案 0 :(得分:4)

您正试图获得您不会选择的价值

  $date = $row['reviewDate'];
  $album = $row['CDTitle'];
  $review = $row['reviewText'];
  $cdid = $row['CDID'];

但您只选择

 SELECT cdreview.reviewDate, cdreview.reviewText, cd.CDTitle  from 

您的选择

中没有CDID列

答案 1 :(得分:0)

您需要使用以下命令将CDID列添加到select语句:

$sql = "SELECT cd.CDID, cdreview.reviewDate, cdreview.reviewText, cd.CDTitle FROM cd [...];"

或使用:

$sql = "SELECT * FROM cd [...];"

您的想法是正确的,当您加入CDID列时,该列可用于SELECT并且两个表具有相同的值。但它不是自动选择的 - 如果你想要检索它,你仍然需要选择它。

没有像隐式SELECT那样将JOIN或其他语句中使用的属性添加到SELECT中。 SELECT语句总是检索您指定的内容,仅此而已。