PHP - 24 Std Zugriff

03/11/2012 18:00 BlueBasHeR#1
Ich will jetzt mit diesem Code:
PHP Code:
<?php
$filename 
'count_thanks.txt';
$somecontent "Thanks \n";

// Sichergehen, dass die Datei existiert und beschreibbar ist
if (is_writable($filename)) {

    
// Wir öffnen $filename im "Anhänge" - Modus.
    // Der Dateizeiger befindet sich am Ende der Datei, und
    // dort wird $somecontent später mit fwrite() geschrieben.
    
if (!$handle fopen($filename"a")) {
         print 
"Kann die Datei $filename nicht öffnen";
         exit;
    }

    
// Schreibe $somecontent in die geöffnete Datei.
    
if (!fwrite($handle$somecontent)) {
        print 
"Kann in die Datei $filename nicht schreiben";
        exit;
    }

    print 
"Danke, dass Du $somecontent gedrückt hast!";

    
fclose($handle);

} else {
    print 
"Die Datei $filename ist nicht schreibbar";
}
?>
Eine 24 Stunden IP Block machen aber wie geht das?

Wenn es geht Ohne "DB","MySQL",...
Wär nett wenn Ihr mir helfen köntet!
03/11/2012 18:28 PseudoPsycho#2
Dann würde ich dir raten, eine Datei mit PHP zu erstellen, welche als den Namen die IP und als Inhalt den aktuellen Timestamp hat...
Anschließend einfach überprüfen, ob eine entsprechende Datei existiert und der Stamp nur 24h zurückliegt...

Beispiel:
PHP Code:
<?php
$filename 
'ip_blocks/'.getenv('REMOTE_ADDR');
$somecontent time();

if (
is_writable($filename)) {
    if (!
$handle fopen($filename"a+")) {
         die(
'Kann die Datei '.$filename.' nicht öffnen');
    }

    if (!
fwrite($handle$somecontent)) {
       die(
'Kann in die Datei .'$filename.' nicht schreiben');
    }
    
fclose($handle);

} else {
    echo 
'Die Datei ',$filename,' ist nicht schreibbar';
}
?>
Und zum Auslesen:
PHP Code:
$ip=getenv('REMOTE_ADDR');
$file='ip_block/'.$ip;
$time=0;
if(
file_exists($file)){
$time=file_get_contents($file); }
if(
$time>time()*60*60*24){
die(
'IP geblockt.'); } 
03/11/2012 19:02 BlueBasHeR#3
DU BIST GENIAL :)!!! Danke!! EINE STUNDE GESUCHT UND NICHST GEFUNDEN...!

Thanks haste von mir :)
03/11/2012 19:09 PseudoPsycho#4
Quote:
Originally Posted by BlueBasHeR View Post
DU BIST GENIAL :)
Ja, aber faul...
Wie du sicher gemerkt hast, ist es dein CounterScript, nur umgeschrieben... xD
03/11/2012 19:10 BlueBasHeR#5
egal^^^^ xD es hat geklappt!^^

nach dem 2x geht der code nicht mehr warum?