0

我正在尝试使用 JOIN 将“users”表中的“user_id”与“topics”表中的“topic_by”连接起来,我四处搜索并设置了以下代码。

$sql = "SELECT topics.topic_id, topics.topic_subject, topics.topic_date, topics.topic_cat, topics.topic_by
            FROM topics 
            INNER JOIN users ON topics.topic_by=users.user_id
            WHERE topics.topic_cat = " . mysql_real_escape_string($_GET['id']) . " ORDER BY topics.topic_date DESC;";

它没有返回任何错误,但是当我尝试调用 user_name..

. $row['users.user_name'] 。

数据应该在的地方只有一个空格,我做错了什么?谢谢。

4

1 回答 1

3

您没有选择语句user_name中的列。SELECT

尝试这个:

$sql = "SELECT topics.topic_id, topics.topic_subject, topics.topic_date, topics.topic_cat, topics.topic_by, users.user_name
  FROM topics 
  INNER JOIN users ON topics.topic_by=users.user_id
  WHERE topics.topic_cat = " . mysql_real_escape_string($_GET['id']) . " ORDER BY topics.topic_date DESC;";

要在数组中选择此列数据$row,您可以这样写:$row['user_name']. 数组中的键$row是列名(或别名,如果提供),但不包括表名。

于 2013-07-04T03:30:21.970 回答