Countdown runterzählen und in MySQL abspeichern

K

Kaleidsocopskalei

Hallo,

Ich habe eine Frage zum Thema Countdown runterzählen und dann in die MySQL Tabelle abspeichern.

Ich erkläre euch meine Idee.:
Der User ist im eingeloggten Zustand. Er klickt auf eine Schaltfläche und sieht auf der nächsten Seite einen Countdown der sich immer wieder automatisch in die MySQL -tabelle apspeichert. Wenn er sich ausloggt soll der Countdown weiterlaufen.

Meine Idee dazu:
MySQL Tabelle:
PHP:
Create Table `User`(
`ID` int(10)
`Username` varchar(30)
`Passwort` varchar(30)
`eCountdown` varchar(70)
);

MySQL Richtig?

Countdown:
PHP:
$zahl = rand (1 , 1000);
mysql_query("INSERT INTO User VALUES ('$zahl')");

Ich habe ne menge vergessen könnt ihr mir Tipps bzw. Ratschläge geben?:confused:
 
Du willst das ein Countdows runter läuft und bei jeder sekunde wird der neue Wert in die DB geschrieben und wenn der user die Seite verlässt läuft der Countdown weiter?

So kann man es nicht lösen.
Am einfachsten wär es, wenn du in die Datenbank schreibt wann der Countdown zu Ende ist und bei jeden Seitenauruf wird anhand der Endzeit der Countdow neu berechnet.
Außerdem ist dein Syntax der Inser-Funktion falsch.
So müsste es sein
PHP:
INSERT INTO Tabelle (spalten) VALUES (Inhalt)
 
Du willst das ein Countdows runter läuft und bei jeder sekunde wird der neue Wert in die DB geschrieben und wenn der user die Seite verlässt läuft der Countdown weiter?

So kann man es nicht lösen.
Eine Ergänzung dazu: PHP-Scripte werden immer nur aufgerufen, wenn auch wirklich ein Benutzer auf die Website zugreift. D.h. wenn kein einziger Benutzer da ist, wird auch dein Count-Down nicht weiterlaufen. Eine while-Schleife wäre eine Alternative (wenn auch keine sehr schöne), wenn du den Quelltext, den du ausgeben willst, immer "flushst", dann sieht der Benutzer schon seine Website, obwohl das Script im Hintergrund noch weiter läuft. Da aber meistens ein Zeitlimit auf die Ausführung von PHP-Scripten eingestellt ist (30-60s), wird dir das nicht viel helfen.
Andere Alternative: Cronjobs. Bedeutet prinzipiell, dass ein Script nach einem bestimmten Intervall immer wieder aufgerufen wird, glaube aber kaum, dass du das 1x die Sekunde machen kannst.

Wenn du eine gute Lösung haben willst, schließe ich mich der Meinung von wod2008 an, schreibe den Endzeitpunkt in die Datenbank. Diese Methode wende ich z.B. auch bei meiner Currency Exchange Rates API an, die ein mal stündlich aktualisiert werden soll. Nach jeder Aktualisierung wird das aktuelle Datum in die Datenbank geschrieben, und bei jedem Aufruf geprüft, ob der Zeitpunkt in der Datenbank schon länger als 3600 Sekunden zurückliegt.

Ich hoffe, das hilft dir weiter!
 
Das was wod2008 gesagt hat find ich ganz gut, aber das mit den Spalten?

Vielleicht so?
PHP:
INSERT INTO Tabelle User VALUES ($zahl)


Oder gäbe es dann noch was anderes?

das was wod2008 am anfang gesagt hat, wollte bzw. genau das will ich!:)
 
Das was wod2008 gesagt hat find ich ganz gut, aber das mit den Spalten?

Vielleicht so?
PHP:
INSERT INTO Tabelle User VALUES ($zahl)


Oder gäbe es dann noch was anderes?

das was wod2008 am anfang gesagt hat, wollte bzw. genau das will ich!:)

Das was ich am Anfang gesagt habe geht nicht, siehe den Post von multimolti.
und bei INSERT muss der Spaltennamen auch in einer Klammer stehen
 
Achso ja Klammer, klar! sry!

Okay hab verstanden...

,... Aber ich hab mich mal vor ner Woche per Pennergame.de angemeldet....

und wenn ich da auf die Schaltfläche klicke kommt ein Countdown von 12:00 Stunden der runtergezählt wird... und dann wenn ich mich auslogge wird das trozdem noch runtergezählt... aber ich denke das ist das selbe wie du mir gegeben hast! hoff ich...
 
Achso ja Klammer, klar! sry!

Okay hab verstanden...

,... Aber ich hab mich mal vor ner Woche per Pennergame.de angemeldet....

und wenn ich da auf die Schaltfläche klicke kommt ein Countdown von 12:00 Stunden der runtergezählt wird... und dann wenn ich mich auslogge wird das trozdem noch runtergezählt... aber ich denke das ist das selbe wie du mir gegeben hast! hoff ich...

Ja da ist das Datum wann die Zeit abläuft in die Datenbank gespeichert und die php datei berechnet die Zeitdifferenz zwischen der aktuellen Zeit und der Zeit in der Datenbank.
 
Okay cool das ist super das du mir das gesagt hast...

ich kuck mal im Internet danach...

Oder kannst du mir ein Link in Tutorials.de sagen?

obwohl, ich kann auch selbst suchen...:google:
 

Neue Beiträge

Zurück