嗨StackOverflow成員,試圖匹配的房間
我想解決一些朋友的代碼,但我沒有擺脫它。我們已經邁出了一步,但並不是確切的順序。先讓我解釋一下。
我們想創建一個匹配系統。但不是以用戶爲基礎,而是以實際房間爲基礎。比賽是由最大租金,最小平方米和選擇的城市。
現在我們創建了以下代碼,它輸出每個用戶及其相應的房間。
$members = $db->query("Select g.gFirstname, g.gLastname,g.gEmail, v.vMeter, v.vMaxrent, v.vWhen, v.vCity From users as g LEFT JOIN users_pref as v ON(g.gId=v.vGid)");
$count = $members->num_rows;
while($fetch = $members->fetch_assoc()){
echo '<br /><br />';
echo 'Rooms found for: <strong>'.stripslashes($fetch['gFirstname']).' '.stripslashes($fetch['gLastname']).'</strong><br /><br />';
$selectKamers = $db->query("Select * From rooms Where kWhen >= ".$fetch['vWhen']." AND kCity = ".$fetch['vCity']." AND kMeter >= '".$fetch['vMeter']."' AND kMaxrent <= ".$fetch['vMaxrent']."");
while($kamer = $selectKamers->fetch_assoc()){
echo '<h1>'.$kamer['kStreet'].' '.$kamer['kHomenumber'].'</h1>';
}
}
此代碼爲我說,首先顯示所有用戶,而在下面的每個用戶的列,示出了每一個房間的使用者施加他的喜好相匹配。
現在的問題是。我們希望創建顯示所有房間的功能,並在其下方顯示與該房間相匹配的所有用戶。
也許是因爲缺乏洞察力,但有人可能會幫助我在路上如何嘗試實現這一目標?
我的數據庫表如下:
--users
gId | gFistname | gLastname | gEmail
1 | Bob | Hope | Email
2 | John | Doe | Email
--users_pref
vGid | vMeter | vMaxrent | vWhen | vCity
1 | 10 | 400 | time() | cityId
2 | 20 | 500 | time() | cityId
--rooms
kWhen | kStreet | kHomenumber | kMeter | kMaxrent | kCity
time() | street | 100 | 15 | 300 | cityid
time() | street | 200 | 25 | 400 | cityid
我想如果我錯過了什麼儘可能完整的與我的解釋,請讓我知道。
非常感謝提前!
Kevin。
你看到LEFT JOIN? – Strawberry
我不明白第1行的左連接與它有什麼關係。我無法將users_pref更改爲房間,因爲表格用戶和房間之間沒有連接標識。 – KevinH
什麼是首選項表和房間表上的主鍵? – Strawberry