2012-02-06 60 views
0

我真的很感激,如果你可以給我一個方法或對如何解決我的問題的想法:搜索一個MySQL表通過另一臺

我有一個包含我的用戶喜歡的姓名,電子郵件信息的表.....等等。和行的id像1,2,3(自動增量)。

而且來檢查,如果第一件是第二部件的朋友另一個表,它是這樣:MEM1 ID,MEM2 ID,添加日期,行的ID ...等

我想拍一個什麼規律HTML表單,讓他的用戶搜索他的朋友。就像傑克輸入他朋友約翰的名字一樣,根據第二張表,他會得到約翰是否是他的朋友。

我會很快樂,如果有人能幫助我,我真的很高興..

回答

0

這可以用JOIN來解決:

SELECT m2.name FROM member_relations AS f 
JOIN members AS m1 ON m1.id = f.mem1 
JOIN members AS m2 ON m2.id = f.mem2 
WHERE m1.name = 'Jack' AND m2.name = 'John' 

假設你已經知道了當前用戶的ID,你可以把它簡化:

SELECT m.name FROM member_relations AS f 
JOIN members AS m ON m.id = f.mem2 
WHERE f.mem1 = {ID} AND m.name = 'John' 
0
SELECT users.name as friend_name, friends.friend_id as friend_id FROM 
users, (SELECT mem1 as friend_id FROM friends WHERE friends.mem1=$userid UNION SELECT mem2 as friend_id FROM friends WHERE friends.mem2=$userid) as user_friends 
WHERE user_friends.friend_id=users.id 

此查詢應該從表中獲取所有的朋友的名字和用戶ID。只需將結果渲染爲json並使用ajax來獲取它。看看自動完成對jQuery UI的 http://jqueryui.com/

0

使用Ajax:當用戶進入第一個值,做php腳本異步調用將在數據庫中的數據搜索和返回結果。

+0

哦,對不起,我的錯! ; ) – maialithar 2012-02-06 16:40:17