<?php
class ip_check{
var $pfad;
var $sperrzeit;
var $ip;
var $array;
var $zeigezahl;
function ip_pruefen()
{
// CONFIG
$this -> pfad = "gb_ip.txt";
$this -> sperrzeit = 60*60;
// CONFIG ENDE
$this -> ip = $_SERVER['REMOTE_ADDR'];
$this -> datei = file($this -> pfad); // or die("Datei nicht eingelesen");
if (isset($this -> ip) && !empty($this -> ip)){$this -> zeigezahl = 1; //Dient dazu, um zu sehen, ob IP gespeichert ist oder nicht// 1 noch nicht vorhanden // 0 vorhanden// --> 0 oder 1 (true oder false wird an gbook.php übergeben// wird in if- Klausel abgefragt und je nach Wert wird Eintrag gespeichert// oder nicht
for ($i = 0 ;
$i < count($this -> datei) ;
$i ++){$daten= explode("|", $this -> datei[$i]);
$sperre_ende=$daten[1] + $this -> sperrzeit;
if ($daten[0] == $this -> ip) // Wenn IP gespeichert, auf Speicherzeit überprüfen
{
if ($sperre_ende >= time())
{// Sperre noch nicht abgelaufen
$this -> zeigezahl=0;
$verbleibend = $sperre_ende - time();
$verbleibend_s = $verbleibend % 60;
$verbleibend_min = ($verbleibend-$verbleibend_s) / 60;
$string= "Du kannst erst in $verbleibend_min:$verbleibend_s Minuten wieder etwas ins Gästebuch schreiben.<br>"; // Gibt aus, wie lange Sperre noch aktiv (derzeit deaktiviert)break; }}
if ($sperre_ende < time())
{
($this -> datei[$i]); // Zeile des entsprechenden Eintrages löschen (wird dadurch nachfolgend nicht mehr in Datei geschrieben)} }
$this -> ip_schreiben();
}
else
{
$this -> zeigezahl = 0;}
return array($this -> zeigezahl, $string);
}
function ip_schreiben()
{
if (isset($this -> ip) && !empty($this -> ip)){ $fp=fopen($this -> pfad, "w") or die ("Datei konnte nicht geöffnet werden");
$daten="";
if ($this -> zeigezahl == 1) // Falls IP schon geschrieben, nicht nochmal schreiben.
{$daten=array($this -> ip, time()); // Array Daten aus IP und aktuellen timestamp
$string=implode("|", $daten); // Array Daten wird über Trennzeichen "|" zusammengefügt
fputs($fp, $string."\n");
}
fputs($fp, implode("", $this -> datei));
fclose($fp);
}
}
}
?>
<hr size="4" color="#FFCC33">
<?php
$contents = file_get_contents("book.txt");
echo($contents); // Alle einträge ausgeben!
?>
</td>
</tr>
</table>
<hr color="#FFCC33" size="5"><marquee bgcolor="#333333" direction="left">
<?php
$reload = file_get_contents('news.txt');
echo($reload);
?>