Einen Bestimmten Wert nach 48 Stunden wieder subtrahieren

genau das meinte ich ja..
Über das Form möchte ich jeden Artikel für 24 Stunden reservieren lassen.
Das Datum und die Uhrzeit, wo ich den Artikel reserviere, wird ja dann in der Datenbank abgelegt.
Nun müsste doch CronJob nach 24 Stunden meinem PHP script den Befehl geben, die Reservierung wieder auf 0 zu setzen. Oder ?
Und genau diese Verknüpfung bekomme ich nicht gebacken
 
Das php-script ist mir klar, das es ein Update Befehl sein muss.
z.B
PHP:
$statement = $pdo->prepare("UPDATE abverkauf_uebersicht SET reservierung = :reservierung_neu WHERE id = :id");
$statement->execute(array('id' => 1, 'reservierung_neu' => '0'));

Aber wie bringe ich CronJob ins spiel ?
 
Nochmal: dein Script muss dafür sorgen, dass alle Reservierungen, die älter als 24 Stunden sind, auf 0 zurückgesetzt werden. Das ist schon mal die Grundvorraussetzung.

Wenn das Script funktioniert, dann muss per Cron dieses Script regelmäßig aufgerufen werden.
 
Genau..
Aber da fehlen mir die Kenntnisse, wie das Script für die regelmäßige Überprüfung geschrieben wird.
Denn das Cronjob-script muss doch irgendwie in meine php-seine eingebunden werden, oder ?
 
Vielleicht verstehe ich das ganze auch nicht vom Aufbau her ?
Ich stelle mir das so vor..

In meiner Tabelle "abverkauf_uebersicht" gebe ich am 2020-07-23 14:15 möchte ich einen Artikel aus Kassel 2x reservieren.
Jetzt kommt Cronjob ins Spiel. Der merkt sich das Ablaufdatum
Die 2 Artikel werden dann 24 Stunden, also bis 2020-07-24 14:15 reserviert

Wenn die Zeit vorüber ist, sagt CronJob meinem PHP-Script, jetzt musst Du tätig werden.. Richtig ?
Und genau dieses "Verbindungsscript" macht mir mega Sorgen
 
Hi,
Du kannst Mit exec() scripte ausführen oder per fopen() die crontab öffnen und was reinschreiben.
Am besten baust Du eine ssh-Verbindung mit php auf, da gibts Bibliotheken für.
Es kann aber Probleme mit dem Rechtssystem geben.

Grüße
 
In meiner Tabelle "abverkauf_uebersicht" gebe ich am 2020-07-23 14:15 möchte ich einen Artikel aus Kassel 2x reservieren.
OK, richtig
Der merkt sich das Ablaufdatum
Nein, das Ablaufdatum kann man ja anhand des eingetragenen Datums ermitteln
Wenn die Zeit vorüber ist, sagt CronJob meinem PHP-Script, jetzt musst Du tätig werden.. Richtig ?
Falsch! Der Cron ruft dein Script in regelmäßigen Abständen auf, z.B. stündlich.
Und genau dieses "Verbindungsscript" macht mir mega Sorgen
Es gibt kein Verbindungsscript! In dem Script machst du vom Prinzip her nicht anderes als ein

update tabelle set reserviert=0 where datum < DATE_SUB(now(), INTERVAL 48 HOUR)
 
Ich versuche jetzt folgendes..
Den CronJob habe ich auf 10 Minuten Intervall gesetzt

Mein Update-Script lautet folgend:
PHP:
$statement = $pdo->prepare("update abverkauf_reservieren set abverkauf_artikelanzahl=0 where reservierung_date < DATE_SUB(now(), INTERVAL 15 MINUTE)");

Habe jetzt einen Artikel reserviert..

So müsste die Reservierung doch spätestens in 21 Minuten wieder auf 0 gesetzt werden.. Oder ?
 
Zurück