hDirk: Banner ausgeben

Guten Abend,

ich möchte auf meiner Seite ein paar Banner ausgeben. Klappt auch soweit ganz gut

  
$werbung = array();  
$sql = "  
SELECT  *  
FROM   `werbung`  
WHERE ausgabeseite = 'index'  
AND format = 120  
  ORDER BY RAND()  
  LIMIT 2  
";  

Allerdings kann es sein, dass ein Banner zweimal angezeigt wird, also der gleiche zweimal direkt untereinander. Dieses ist nicht sehr schön und auch nicht gewollt, kann ich mein Code etwas umändern, dass dieses eben nicht passiert?

  1. Mahlzeit,

    Allerdings kann es sein, dass ein Banner zweimal angezeigt wird, also der gleiche zweimal direkt untereinander. Dieses ist nicht sehr schön und auch nicht gewollt, kann ich mein Code etwas umändern, dass dieses eben nicht passiert?

    Probier mal ne Abfrage mit DISTINCT, das sollte doppelte Ergebnisse verhindern.
    Wobei ich bei der ABfrage nicht verstehe, dass du zweimal den gleichen Eintrag bekommst, dazu müssten die Banner ja mehrfach in der Datenbank stehen.

    --
    eigentlich ist mir bewusst, dass ich hin und wieder einfach mal die Klappe halten sollte. Doch genau in den unpassendsten Momenten erwische ich mich dabei, wie ich dennoch etwas sage ...
    1. Guten Abend,

      Wobei ich bei der ABfrage nicht verstehe, dass du zweimal den gleichen Eintrag bekommst, dazu müssten die Banner ja mehrfach in der Datenbank stehen.

      OK, ich habe den "Fehler" gefunden. Ein paar Banner vom gleichen Werbeanbieter sehen gleich aus nur der Text ändert sich. Also muss ich das Problem wohl von einer anderen Seite angehen. Ist es möglich bei meinem Code zu sagen, dass der gleiche Werbepartner _nicht_ zweimal in einer Abfrage vorkommen darf?

      1. Mahlzeit,

        Ist es möglich bei meinem Code zu sagen, dass der gleiche Werbepartner _nicht_ zweimal in einer Abfrage vorkommen darf?

        Wenn der Name des Werbepartners in der Datenbank zu finden ist, natürlich. Ob das so ist, geht aus deinen spärlichen Infos nicht hervor.

        --
        eigentlich ist mir bewusst, dass ich hin und wieder einfach mal die Klappe halten sollte. Doch genau in den unpassendsten Momenten erwische ich mich dabei, wie ich dennoch etwas sage ...
        1. Mahlzeit,

          Wenn der Name des Werbepartners in der Datenbank zu finden ist, natürlich. Ob das so ist, geht aus deinen spärlichen Infos nicht hervor.

          ich kann in der Datenbank machen was ich möchte, ist ja meine. Also legen ich ein weiteres Feld mit Werbekunden an. In diesem Feld steht z.B. eine 1 für den ersten Kunden.

          Wie müsste ich dann meine Abfrage erweitern, dass dieser nur einmal pro Aufruf angezeigt wird und nicht wie jetzt zwei untereinander ausgegeben werden.