Hallo,
ich habe das Problem, dass ich hintereinander zwei Funktionen aufrufe, die sich gegenseitig löschen - denke ich...
einmal diese:
Code:
mysql_query("UPDATE online SET activity = curtime() WHERE uid = '".$_SESSION['uid']."';");
Dieser Code setzt die aktuelle Zeit des Users mit der ID "x" in das Feld "activity". Gleich darunter, lösche ich alle User, die eine Inaktivität von 20 Minuten haben:
Code:
$
sql = "DELETE FROM online WHERE timediff(activity, curtime()) > '-00:20:00';";
Beide Statements führe ich mit
mysql_query($sql); aus. Schau ich in die
DB, ist kein Eintrag drin. Kommentiere ich das "Lösch-Statement" aus und frage erneut die
DB, funzt es.
Führe ich dann das gleiche Statement zum Löschen per Konsole oder PHP-Seite aus, funzt es auch.. Kann es sein, dass die Rechner so schnell sind, dass sie bei aufeinanderfolgender Ausführung als Differenz die Uhrzeit "00:00:00" - "aktuelle Zeit" rechnen und als Ergebnis "-aktuelle Zeit" bekommen? Eigentlich werden doch die Statements nacheinander ausgeführt, oder?
Danke im Voraus für die Hilfe - fummele schon seit 4 Uhr dran rum (nicht an der Freundin, am Script
)