PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [SQL] Interner Zähler



Dominik
07.06.2004, 15:27
Nabend,

meine Frage:
Wie realisiert man einen "internen" Zähler mit einer MySQL Datebank. Also wie bei Browsergames oft zu sehen ist, wenn man eine gewisse Aktion durchführt, kann man z.b. 6 Stunden nichts mehr machen.
Ich stell mir das so vor:

Der Wert in der DB im Profil wird auch 6 Stunden gestellt und dann runtergezählt, bis die 6 Stunden abgelaufen sind. Gut, aber wie macht man das? Mit PHP würde das wie folgt gehen:
http://www.dclp-faq.de/q/q-php-zeitgesteuert.html

Hab ich keine Chance das mit der DB intern zu regeln?

Kann jemand helfen?

tubbu
07.06.2004, 17:28
du schreibst datum und uhrzeit in die db, wann der user die aktion gemacht hat.
Wenn er sie wieder machen will, überprüfst du, ob die letzte aktion mehr als 6 stunden her ist, wenn ja, eintrag in der db mit neuem datum überschreiben und aktion erlauben, wenn nicht nicht.

Dominik
07.06.2004, 17:47
Richtig, genau so hab ich das auch grad rausgearbeitet. Cronjobs etc. sind nicht umbedingt notwendig, aber in manchen Dingen wirklich hilfreich.
Und eigentlich schade, dass es SQL-intern keine Zählfunktion gibt ... würde bestimmt auch in anderen Dingen helfen.

Danke für Deine Antwort.

tubbu
07.06.2004, 18:35
nen cronjob kannst du ja evtl. noch verwenden um den db-eintrag zu löschen, wenn er ne woche alt ist, oder so.
dann hast du das problem nicht, dass die db unnötig groß wird, wenn sich viele nur einmal einloggen...

ich halte diese lösung übrigens für viel naheligender und recourcensparender, als ständiges runterzählen