2012-03-21 47 views
0

該網站包含圖像。這些圖像可以進行排名。當圖像排名時,值可以是1,2或3.爲了節省排名,我有一個表ranking_items。圖像顯示爲縮略圖。當單擊縮略圖時,它會用後退和下一個按鈕打開整個圖像。當圖像按ID順序排列時,返回和下一個都沒問題。但現在我希望我的圖像按排名排序,當我打開全尺寸圖像時,我需要返回和下一個按鈕。試圖得到prev-next行與順序左 - 加入

繼承人我怎麼查詢所有圖像

SELECT images.id AS imageID 
FROM images 
LEFT JOIN ranking_items ON images.id=ranking_items.image_id 
ORDER BY ranking_items.rank, images.id ASC 

我在這裏創建縮略圖。在縮略圖的鏈接是這樣的:

<a href='viewImage.php?id=$imageID'><img /></a> 

當我打開這裏的形象是我查詢它:

SELECT id 
FROM images 
WHERE id='$_GET["id"]' 

所以對於我的背下一個按鈕,我需要這樣的東西:

SELECT images.id AS imageID 
FROM images 
LEFT JOIN ranking_items ON images.id=ranking_items.image_id 
WHERE images.id < '".$imageID."' 
ORDER BY ranking_items.rank_id, images.id ASC LIMIT 1 

但這似乎並不正確。任何幫助,將不勝感激。

+1

請考慮改變你的標題到原來的問題/問題。然後或者用你的答案編輯你的帖子,或者實際上在這裏回答。這種方式可以被其他人以後使用,可能會有你的問題。 – skippr 2012-03-22 00:47:50

回答

1

根據提問者,這工作:

SELECT images.id AS imageID 
FROM images 
LEFT JOIN ranking_items ON images.id=ranking_items.image_id 
WHERE ( 
      (images.id < ".$image->imageID ." AND ranking_items.rank_id='".$image->rank_id."') 
     OR 
      ranking_items.rank_id < '".$image->rank_id."' 
     ) 
ORDER BY ranking_items.rank_id DESC,images.id DESC LIMIT 1