2015-07-03 93 views
-1

我想要做的是显示引用表中的名称,而不是显示我明显得到的id。MySQL显示其他表中的id的名称insead

这是我在我的网站上显示的表格。 “jid”仅用于A_I,因此每个新连接都会获得一个新的ID。

enter image description here

这是所有其他的表是如何成立。

enter image description here

所以,从我知道我必须做的JOIN,以便能够显示名称,而不是ID的,但我一直在努力使自己的语法,从其他的建议,但我没有能够弄明白。

这是一个我已经试过

$query = "SELECT joined.categoryid, category.name 
FROM joined 
INNER JOIN category 
ON joined.categoryid = category.categoryid"; 
$result = $mysqli->query($query); 
+0

这将有助于如果你显示连接查询你里德。然后,我们可以帮助纠正它。 – kainaw

+0

因此,表格的名称是**加入**和**类别**? – doru

+0

是的,我使用加入来收集所有其他表与外键的信息。类别,城市等。在每个表中,您可以看到的是ID和名称。我可以很容易地在浏览器中显示id,因为我只需要在连接的表格中查看一个while循环,但我想显示该名称! – Querty

回答

0
<?php 

$result = mysql_query("SELECT joined.categoryid, category.name, category.categoryid 
FROM joined 
JOIN category 
ON joined.categoryid = category.categoryid", $db); 
if (!$result) { 
die("Database query failed: " . mysql_error()); 
} 

while ($row = mysql_fetch_array($result)) { 
echo "<h2>"; 
echo $row[1].""; 
echo "</h2>"; 
echo "<p>"; 
echo $row[2].""; 
echo "</p>"; 
} 
?> 

我想这个自己这里是我的输出

http://prntscr.com/7ohruc

+0

我试过这个,它仍然显示ID而不是名称 – Querty

+0

你试过了,只是SELECT category.name ?? 'SELECT joined.categoryid,category.name,category.categoryid' – MrNeedsaHand

+0

如果我理解正确,我试着用'SELECT category.name'。现在它不显示任何东西。 – Querty

0

试试这个:

"SELECT joined.categoryid, category.name 
FROM joined, category 
WHERE joined.categoryid = category.categoryid"; 
+0

对不起,这也没用。 – Querty