Autor | Zpráva | ||
---|---|---|---|
Tomashek Profil |
#1 · Zasláno: 27. 2. 2010, 18:03:52
Dobrý den,
tvořím si galerii a chci zobrazit na stránce zadaný obrázek a odkazy na další a předchozí obrázek. Zkouším to nějak skombinovat jednim sql příkazem, ale nedaří se mně to. (Jestliže je lepší zavolat více příkazů ( zobrazení obrázku, další obrázek, předchozí obrázek), napište hned a nemusím nic řešit. Dokázal jsem vytvořit příkaz, který buďto zobrazuje další a předchozí, ale v případě, že je obrázek prvni, nedokáže hodit na poslední (a naopak). Pak jsem zase vytvořil sql, které neházelo na další a předchozí, ale dokázalo by hodit na první a poslední. SELECT gallery_images.name, gallery_albums.name AS aName, gallery_albums.id AS aId, COALESCE(prev.id,'zde max id') AS prev, COALESCE(next.id,'zde min id') AS next FROM gallery_images INNER JOIN gallery_albums ON gallery_albums.id=gallery_images.album LEFT JOIN (SELECT id FROM gallery_images WHERE id<".$_GET['id']" ORDER BY id DESC LIMIT 1) AS prev ON gallery_images.id=prev.id LEFT JOIN (SELECT id FROM gallery_images WHERE id>".$_GET['id']." ORDER BY id LIMIT 1) AS next ON gallery_images.id=next.id WHERE gallery_images.id='".$_GET['id']."' Jestli by někdo věděl, prosím o radu. Děkuji |
||
Kajman_ Profil * |
#2 · Zasláno: 27. 2. 2010, 20:31:58
SELECT gallery_images.name, gallery_albums.name AS aName, gallery_albums.id AS aId, COALESCE(prev.id,t.maxid) AS prev, COALESCE(next.id,t.minid) AS next FROM gallery_images INNER JOIN gallery_albums ON gallery_albums.id=gallery_images.album LEFT JOIN (SELECT id FROM gallery_images WHERE id<".$_GET['id']" ORDER BY id DESC LIMIT 1) AS prev ON gallery_images.id=prev.id LEFT JOIN (SELECT id FROM gallery_images WHERE id>".$_GET['id']." ORDER BY id LIMIT 1) AS next ON gallery_images.id=next.id join (select min(id) minid, max(id) maxid from gallery_images) t WHERE gallery_images.id='".$_GET['id']."' |
||
Časová prodleva: 13 let
|
0