Wahrscheinliches bevorzugen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Wahrscheinliches bevorzugen

    Hallo,

    ich habe folgendes problem.
    Ich möchte aus einer Liste per zufallsgenerator verschiedene Sätze ausgeben lassen. Das hab ich jetzt auch über den Befehl ORDER BY RAND() LIMIT 1 geschafft.

    Nun muß ich es aber irgendwie bewerkstelligen, dass der Satz nicht gleich wieder angezeigt wird.
    Ich müßte es irgendwie bewerkstelligen das die wahrscheinlichkeit das er wieder aufgerufen wird, nach dem ersten aufruf sinkt.

    hab mir überlegt infach jedem satz defaultmäßig den wert null zu geben, und nach jedem aufruf wird dieser wert einfach um 1 erhöht.
    Dann müßte ich mir also irgendwas basteln, das diesen wert beim Zufallsgenerator mit einbezieht.
    Das sätze mit dem wert null gegenüber sätzen mit dem wert eins bevorzugt werden usw.

    Ist sowas möglich, oder übersteigt das jeglichen sinnvollen programieraufwand ?

    besten dank

    martin

  • #2
    Hmm Also die idee einen aufruf counter zu machen ist schonmal gut. Jetzt weiss ich nicht genau wie zufällig wofür etwas augegeben wird. Also im schlimmsten fall musst du wirklich einen Zufallsgenerator machen. Sollte aber nicht all zu schwer sein. Es kann natürlich auch so sein, das du es nicht ganz Zufällig machen musst

    Kommentar


    • #3
      hi

      so wie es aussieht sind deine sätze in einer db.
      dann haben sie sicher auch eindeutige id's.
      wenn dem so ist voschlag : cookies.

      so kannst du jedem user ein cookie setzen mit einem kommaseparierten string mit id's von sätzen die er schon gesehen hat. erst wenn er alle gesehen hat wird das cookie wieder auf null gesetzt und der zirkus fängt von vorne an.

      so hast du zwar keinen richtigen counter aber ein einzelner user sieht keinen spruch mehrmals, jedenfalls nicht bevor er nicht alle gesehen hat.

      greets
      ------------------------
      http://swisswebgroup.com
      ------------------------

      Kommentar

      Lädt...
      X