hallo!
ich habe einen ganz komischen fehler bei einer meiner DB-abfragen.
erstmal soviel zur erklärung:
ich habe eine Tabelle, in der stehen meine daten zu den Banneren auf meiner steite. diese sind durch das Feld type in horizontal(1) und Vertikal(2) unterteilt.
über order by rand() frage ich dann mit untenstehender sql-abfrage meinen banner ab.
hier erstmal die abfrage:
so nun zum problem:
offline funktioniert alles super. wenn ich es aber auf meinen server spiele wird beim vertikalen banner immer nur der erste ausgelesen. an der abfrage liegt es nicht. lasse ich mir die agfrage ausgeben und frage diese über MySQL-Front auf dem server ab, so funktioniert alles und ich bekomme auch unterschidliche banner.
jetzt dachte ich mir frag den vertikalen banner doch 2 mal ab und überschreibe die 1. abfrageergenisse. und siehe da auch dann funktionierts.
kann mir jemand einen tipp geben warum das nicht bei der ersten abfrage funktioniert?
ich habe einen ganz komischen fehler bei einer meiner DB-abfragen.
erstmal soviel zur erklärung:
ich habe eine Tabelle, in der stehen meine daten zu den Banneren auf meiner steite. diese sind durch das Feld type in horizontal(1) und Vertikal(2) unterteilt.
über order by rand() frage ich dann mit untenstehender sql-abfrage meinen banner ab.
hier erstmal die abfrage:
Code:
SELECT Ident AS BannerId, ImageName, BannerURL, RAND() AS zufall FROM h_admin_banner WHERE Type = '2' AND state = '20' AND ( (FromDate <= '2006-06-14' OR FromDate IS NULL) AND ToDate >= '2006-06-14' OR ToDate IS NULL ) AND ( ( FromTime < ToTime AND FromTime <= CURTIME() AND ToTime >= CURTIME() OR FromTime IS NULL OR ToTime IS NULL ) OR ( ( FromTime > ToTime AND (FromTime < CURTIME() AND '23:59:59' >=CURDATE()) OR (ToTime > CURTIME() AND '00:00:00' <= CURDATE()) ) OR FromTime IS NULL OR ToTime IS NULL ) ) ORDER BY zufall LIMIT 0,1;
offline funktioniert alles super. wenn ich es aber auf meinen server spiele wird beim vertikalen banner immer nur der erste ausgelesen. an der abfrage liegt es nicht. lasse ich mir die agfrage ausgeben und frage diese über MySQL-Front auf dem server ab, so funktioniert alles und ich bekomme auch unterschidliche banner.
jetzt dachte ich mir frag den vertikalen banner doch 2 mal ab und überschreibe die 1. abfrageergenisse. und siehe da auch dann funktionierts.
kann mir jemand einen tipp geben warum das nicht bei der ersten abfrage funktioniert?

Kommentar