WinFuture-Forum.de: [php/sql] Banneranzeige Zufällig - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

[php/sql] Banneranzeige Zufällig


#1 Mitglied ist offline   Slayer 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.475
  • Beigetreten: 12. Dezember 03
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Baden-Württemberg
  • Interessen:&gt; Internet<br />&gt; Musik<br />&gt; Filme<br />&gt; Events

geschrieben 24. März 2005 - 12:42

Hallo zusammen.

Ich habe in einer Datenbank die Tabelle "banner" mit folgenden Spalten:
- id (zum identifizieren und ordnen)
- url (adresse der homepage)
- image (grafik des banners)
- klicks (wie oft ein banner angeklickt wurde)
- kat (zu welcher Kategorie das banner gehört)

Ich will nun immer nur EIN Banner aus der Datenbank ausgeben, er soll aber zufällig ausgesucht werden... Die Ausgabe mache ich mit einer while-Schleife.
Wie kann ich jetzt aber bestimmen, dass er zufällig nach der ID oder so einen Banner ausgeben soll?

Wäre es dann auch möglich, dass ich eine Priorität festlege, wie oft der Banner ausgegeben wird?
Beispielsweise: 0 am seltensten und 100 am öftesten?

Danke schon mal im Voraus :)
Der Mensch hat drei Wege, klug zu handeln.
Erstens durch Nachdenken: Das ist der Edelste.
Zweitens durch Nachahmen: Das ist der Leichteste.
Drittens durch Erfahrung: Das ist der Bitterste.

(Konfuzius)
0

Anzeige



#2 Mitglied ist offline   tobiasndw 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.801
  • Beigetreten: 24. September 03
  • Reputation: 1
  • Geschlecht:Männlich

geschrieben 24. März 2005 - 12:54

Du läßt alle ID's aus der Datenbank auslesen und speicherst diese in einem Array .

Anschließend läßt du eine Zufallszahl erzeugen die zwischen der niedrigsten und höchsten ID im Array ist.

Dann prüfst du ob die Zufallszahl auch als ID im Array vorkommt. Wenn nicht wird erneut eine Zufallszahl erzeugt und die Prüfung wird wieder durchgeführt.

Wenn die Zufallszahl einer ID im Array entspricht wird dieses Banner angezeigt.

:)
0

#3 Mitglied ist offline   Floele 

  • Gruppe: aktive Mitglieder
  • Beiträge: 919
  • Beigetreten: 22. Juni 04
  • Reputation: 0

geschrieben 24. März 2005 - 13:38

Oder einfacher

$sql = "SELECT * FROM tabelle
          ORDER BY RAND() LIMIT 1";


um einen zufälligen Banner auszulesen.

Dieser Beitrag wurde von Floele bearbeitet: 24. März 2005 - 13:38

0

#4 Mitglied ist offline   k0zy 

  • Gruppe: Mitglieder
  • Beiträge: 15
  • Beigetreten: 04. Juni 04
  • Reputation: 0

geschrieben 24. März 2005 - 16:32

Zitat (tobiasndw: 24.03.2005, 12:54)

Du läßt alle ID's aus der Datenbank auslesen und speicherst diese in einem Array .

Anschließend läßt du eine Zufallszahl erzeugen die zwischen der niedrigsten und höchsten ID im Array ist.

Dann prüfst du ob die Zufallszahl auch als ID im Array vorkommt. Wenn nicht wird erneut eine Zufallszahl erzeugt und die Prüfung wird wieder durchgeführt.

Wenn die Zufallszahl einer ID im Array entspricht wird dieses Banner angezeigt.

:)
<{POST_SNAPBACK}>


Oder einfach: http://de.php.net/ma....array-rand.php
Dann kannste dir das generieren und überprüfen sparen.
Ich würde es aber machen wie Floele vorgeschlagen hat.

k0zy
0

#5 Mitglied ist offline   Slayer 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.475
  • Beigetreten: 12. Dezember 03
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Baden-Württemberg
  • Interessen:&gt; Internet<br />&gt; Musik<br />&gt; Filme<br />&gt; Events

geschrieben 24. März 2005 - 16:44

Danke euch für die schnelle Antwort.

Das von Floele ist genau das, was ich gesucht habe. Danke!
Der Mensch hat drei Wege, klug zu handeln.
Erstens durch Nachdenken: Das ist der Edelste.
Zweitens durch Nachahmen: Das ist der Leichteste.
Drittens durch Erfahrung: Das ist der Bitterste.

(Konfuzius)
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0