簡體   English   中英

MySQL內部連接輸出到PHP中的html表

[英]MySQL Inner join output to html table in php

我有一個表格,該表格以如下形式顯示: http : //puu.sh/5VBBv.png

在此處輸入圖片說明

表格的末尾,城市,正在顯示一個城市的ID,該ID應該鏈接到另一個表( http://puu.sh/5VBIG.png )。

在此處輸入圖片說明

我對INNER JOIN查詢所做的工作是:

mysql_query("SELECT * FROM cities INNER JOIN people ON people.cityid = cities.id") or die(mysql_error());` 

我正在嘗試將其輸出到表中:

echo "<td>" . $row['cityid'] . "</td>";

我的問題是我不太確定如何實際顯示與城市名稱相對應的城市ID。 我嘗試使用['name']和其他值作為要在表中輸出的值,到目前為止,我在任何地方都找不到解決方案。 我只是在學習聯接,所以我對自己可能做錯的事情一無所知。 有什么明顯的東西嗎?

首先,您在聯接查詢中使用*可能是模棱兩可的。 如果城市有一個名稱列,而人們有一個名稱列,您將不知道會得到哪一個。 其次,您可以通過幾種方式執行此操作。 我認為您正在嘗試從城市名稱獲取城市ID。 如果是正確的話,您可以進行make和ajax調用並直接查詢它,或者定義一個數組,如下所示:

$res = mysql_query("...");    
$city_ids = Array();

while ($ary = mysql_fetch_assoc($res)) {
        city_ids[$ary['name']] = Ary['id']; 
}

然后,當您獲得名稱時,只需循環$ary['name']

從人中選拔和加入城市更有意義。 然后選擇您需要的字段。

SELECT people.*, cities.name as city_name FROM people JOIN cities ON people.cityid = cities.id

然后, echo $row['city_name']

 Select ID from cities city, people person where person.ID = city.ID

您正在從“城市”和“人”中選擇ID,然后加入ID

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM