Beste PHPers,
als 'beginner' loop ik bij het maken van een fotosite tegen een probleempje aan.
Ik heb een site, waarop in de gallery random thumbs getoond worden.
Dit werkt perfect. Na het klikken op een thumb kom je in de categorie terecht, waar weer thumbs staan. Ook dit werkt. Maar dan...
Men klikt op een thumb, de foto opent zich vergroot op de pagina (header/menu/foto/navigatie/footer) en dan begint de ellende:
Als navigatie wil ik ook een thumb weergeven, van de vorige/volgende foto uit de categorie.
Ik haal de gegevens die hiervoor nodig zijn uit de database, met deze regels :

volgende:
SELECT * FROM fotos WHERE categorie='$huidigecategorie' AND ID!='$huidigeID' AND datum<='$huidigedatum' ORDER BY datum DESC LIMIT 1

vorige:
SELECT * FROM fotos WHERE categorie='$huidigecategorie' AND ID!='$huidigeID' AND datum>='$huidigedatum' ORDER BY datum ASC LIMIT 1

Alle genoemde variabelen worden eerder meegegeven en zijn dus gevuld.
Het probleem is, dat wanneer er meer fotos van dezelfde datum zijn hij in een soort loop terecht komt en dus enkel nog deze fotos weergeeft.
(wanneer het een andere datum is werkt alles perfect)

Dit probleem wordt veroorzaakt door de ">=" in de query, maar als ik het = teken weglaat, geeft hij geen fotos van dezelfde dat meer als volgende/vorige optie. Dat kan dus ook niet ;)
Nu wilde ik dit probleem oplossen door de foto waarvan het ID het dichts in de buurt ligt van het huidig ID ($huidigeID) weer te geven, maar hoe verwerk ik dit in de query?
Of is er een betere oplossing?


edit 1:
Bij deze een screenshot van het probleem, je ziet links en rechts dezelfde foto staan.
http://i28.tinypic.com/2b9n9t.jpg

Alle hulp is welkom;) alvast bedankt voor de reacties!
gr
Laurens
Ik zou het id van de foto's niet gebruiken. Een id is eigenlijk alleen voor je database van belang. Waarom niet sorteren op de bestandsnaam?

SELECT filename
FROM fotos
WHERE categorie = '$huidigecategorie'
AND filename > '$huidigefilename'
ORDER BY filename ASC
LIMIT 1
Als ik je goed begrijp komen de fotos zo door elkaar heen, dus niet meer op datum gesorteerd?
Dat is iets wat k graag zou voorkomen, sorteervolgorde op datum heeft mijn voorkeur.
K zat zelf nog aan zoiets te denken,
op de 'bekijk' pagina de fotos net als op de thumbnailpagina uit de database laden, maar dan in een array plaatsen.
Als dat mogelijk is de huidige foto eruit pikken, en de foto daarvoor/daarna als vorige/volgende aanstellen.
Is zoiets realiseerbaar, of zit ik nu echt te fantaseren?
Of is hier een simpelere oplossing mogelijk?
Alvast bedankt voor de hulp,

gr
Laurens

Reageren