Möglichkeit IP Speichern und nach X Minuten wieder löschen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
code
dank
datei
eintrag
erstellen
frage
hilfe
http
kleine referenz
limit
logik
minute
nachsehen
not
null
rechnen
set
tabelle
update
url
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Hey das sollte gehen
<?php //include mySQL Datei $ip=$_SERVER['REMOTE_ADDR']; $time = time(); $minuten = 5; //loesche alle eintrage die laenger als $minuten her sind mysql_query("DELETE FROM `ips` WHERE `time` < " . ($time-$minuten*60)); $sql = "SELECT `id` FROM `ips` WHERE `id` = '" .$id."' AND `time` >= ".($time-$minuten*60)." LIMIT 1"); $result = mysql_query($sql); //eintrag bereist vorhanden, also updaten if(mysql_num_rows($result)>0){ $row = mysql_fetch_array($result); mysql_query("UPDATE `ips` SET `time` = " . $time . " WHERE `id` = " . $row[0] . " LIMIT 1"); }else{ //eintrag noch nicht vorhanden, also erstellen mysql_query("INSERT INTO `ips` `time`,`ip`)VALUES(" . $time . ",'" .$ip."' )"); } ?>
ist aber nicht getestet.
und die tabelle dazu
CREATE TABLE`ips` ( `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , `ip` VARCHAR( 15 ) NOT NULL , `time` INT( 11 ) NOT NULL ) ENGINE = MYISAM ;
Gruß Andre -
Du könntest das entweder über einen Cronjob machen, oder bei jedem Seitenaufruf nachsehen, ob es Einträge gibt, die älter als 5 Minuten sind und diese dann löschen.
Das Rechnen mit Timestamps (für die 2. Möglichkeit) setzt nur ein bisschen Logik voraus, dann ist das überhaupt nicht schwer.
Eine kleine Referenz zu UNIX-Timestamps (oder meinst du was anderes mit „Timestamps“ ?) findest du hier.
Lg cookies -
Danke an euch beide, Thema kann geschlossen werden.
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage