Guziczki "następne/poprzednie" zdjęcie

Witam serdecznie,

Mam taką tabelę:

 

CREATE TABLE IF NOT EXISTS `zdjecia` (
  `bf_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
  `idusera` int(11) NOT NULL,
  `idgalerii ` int(11) NOT NULL,
  `nazwa` varchar(85) COLLATE utf8_unicode_ci DEFAULT NULL,
  `miejsce` varchar(80) COLLATE utf8_unicode_ci DEFAULT NULL,
  `obrazek` varchar(65) COLLATE utf8_unicode_ci DEFAULT NULL,
  UNIQUE KEY `bf_id` (`bf_id`),
  UNIQUE KEY `bf_id_2` (`bf_id`),
  KEY `bf_id_3` (`bf_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;

 

Mam 2 listy zdjęć/galerie (różniące się sortowaniem):

 

 

1. SELECT bf_id, obrazek, miejsce, nazwa FROM zdjecia where idusera=:idusera and miejsce=:miejsce ORDER by nazwa ASC;
2. SELECT obrazek, idgalerii, nazwa, miejsce, bf_id FROM zdjecia where idgalerii=:idgalerii ORDER by nazwa ASC;

 

 

Potrzebuję dla obu list w podglądzie zdjęcia zrobić guziczki “następne zdjęcie” oraz “poprzednie zdjęcie”.

 

Mam aktualnie taki kod dla pkt1:

 

 

SELECT bf_id FROM zdjecia where miejsce=:miejsce and bf_id = (SELECT MIN(bf_id) FROM zdjecia WHERE bf_id>:idobecne) ORDER by nazwa ASC LIMIT 1;

SELECT bf_id FROM zdjecia where miejsce=:miejsce and bf_id = (SELECT MAX(bf_id) FROM zdjecia WHERE bf_id<:idobecne) ORDER by nazwa ASC LIMIT 1;

 

 

oraz dla pkt 2:

 

SELECT MIN(bf_id) as bf_id FROM zdjecia where bf_id>:bf_id and idgalerii=:idgalerii ORDER by nazwa ASC LIMIT 1;

SELECT MAX(bf_id) as bf_id FROM zdjecia where bf_id<:bf_id and idgalerii=:idgalerii ORDER by nazwa ASC LIMIT 1;

 

Użytkownik może:

a) wejść w dowolne miejsce w galerii aby je podejrzeć

B) lista zdjęć oraz strzałki poprzednie zdjęcie/następne zdjęcie muszą mieć taką samą kolejność w wyświetlaniu.

 

W chwili obecnej strzałki nie pokrywają się z kolejnością :frowning:

 

Ma ktoś może pomysł jak naprawić moje zapytania? Jak one powinny wyglądać żeby to wyglądało poprawnie?

 

 

Bardzo proszę o pomoc,

Northwest

nikt nie potrafi mi pomóc?? :frowning: