Guten Abend,
ich möchte gern mal etwas auf diesen Threat hier aufbauen: http://www.computerhilfen.de/all-8-274987.html
Dort war beim Löschen die rede von folgendem:
$sql = "DELETE FROM
Online
WHERE
DATE_SUB(NOW(), INTERVAL 1 MINUTE) > Datum";
Ich fand das relativ interessant und übe mich derzeit daran.
Ich sitze aber an diesem DATE_SUB() fest, und weiß keinen Rat.
Ich versteh nicht, wass der Unterschied zwischen dem NOW() und dem "DATUM" sein soll. Im Endeffekt müssen das für mich die selben Daten/Uhrzeiten sein.
Ich hab bis jetzt folgendes vorbereitet:
<?php
$now = $_SERVER['REQUEST_TIME'];
$formated_now = date("H:i:s", $now);
$sql = "UPDATE support_user
SET loginsession = NULL
WHERE DATE_SUB(".$now.", 'T3M') > ".$now;
$stmt = $db->prepare($sql) or die($db->error);
$stmt->execute();
/*
'T3M' = Intervall von 3 Minuten. Siehe http://de.php.net/manual/de/datetime.sub.php
Zitat:
The amount to be subtracted. For the date use "P3D", "P3M", "P3Y"
or a combination of the three e.g. "P2M5D" (Y = Years, M = Months, D = Days.)
MUST BE YEAR MONTH DAY FORMAT "P5Y", "P5M2D", "P5Y4D". For the time use "T3H", "T3M", "T3S" or
or a combination of the three e.g. "T5H20M" (H = Hours, M = Minutes, S = Seconds). For dateTime
us "P5D2M4YT5H20M". The digit before the letter (NOT P or T) can be any amount.
Daraus resultiert das 'T3M' für eine Intervall von 3 Minuten.
*/
print_r($sql);
/*
Gibt aus:
UPDATE support_user SET loginsession = NULL WHERE DATE_SUB(1237146945, 'T3M') > 1237146945
*/
?>
Ganz ehrlich gesagt traue ich mich nicht wirklich das jetzt so auszuprobieren...
Ich glaube auch nicht, dass es mit dem 2 mal dem jetztigen Datum/ jetztige Uhrzeit angeben richtig ist.
Würd mich freuen wenn ne kleine Diskusionsrunde oder vllt. auch direkt Lösungsvorschläge zustande kommen würden.
Greetz,
jackson