【发布时间】:2016-09-25 06:20:50
【问题描述】:
首先,对于标题中粗俗的术语,我深表歉意。
<? if ($thisguy == "noob") { echo("bear with me"); } ?>
我有两张桌子:
一个“评分”(行:产品、用户、评分、添加)WHERE user = $thisuser[id],
和一个“产品”(ID、名称)WHERE product.id = rating.product。
我已经广泛阅读了有关连接(内、外、左、右...)的内容,但我对此非常困惑。
我需要数组中的所有信息 WHERE Product.id = ratings.product and user = $thisuser[id]。
我正在使用这个:
$result = mysql_query("SELECT ratings.product, ratings.user, ratings.rating, ratings.added FROM ratings INNER JOIN products ON products.id = ratings.product AND user = $THISUSER[id]");
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
$product = $row['product'];
$user = $row['user'];
$rating = $row['rating'];
$added = $row['added'];
$pid = $row['id'];
$pname = $row['name'];
}
print("$user, $rating, $added, $THISUSER[id], $pname, $pid"); }
这会在评级表中生成所有内容(但只有一个实例),而在产品表中没有任何内容...我已经尝试了 100 种不同的方法,但均无济于事。任何帮助将不胜感激!对我放轻松。 *威瑟斯
【问题讨论】:
-
你能提供你的表结构以及表之间的关系吗?
-
试试
LEFT JOIN。如果您从products表中选择列,您会看到所有NULL值吗? -
@火影忍者:我很抱歉。这是我在此的头一篇博文。我不确定如何提供结构。唯一的关系是products.id 和ratings.product //@Tim Biegeleisen:我愿意。它打印的地方,除了产品信息,我有所有信息。只是用 2 个逗号空格
-
@user3502802。我已经提供了解决方案,请尝试让我知道