SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Webseiten professionell erstellen

Webseiten professionell erstellen zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > PHP Grundlagen
Hilfe Community Kalender Heutige Beiträge Suchen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

 
 
Themen-Optionen Ansicht
  #1  
Alt 23.07.2014, 13:18:13
captain captain ist offline
Anfänger
 
Registriert seit: Jul 2014
Alter: 23
Beiträge: 1
IP Sperre auf Zeit

HI Leute,
ich würde gerne für ein Login-Verfahren eine IP-Sperre nach 3 Fehlversuchen machen. Dass nach 3 Fehlversuchen etwas passiert hab ich schon. Nur leider verstehen ich nicht wie ich es machen soll, dass er eine IP-Sperre macht die für beispielsweise 15 Minuten anhält und dann automatisch aufgelöst wird.
Ich hab schon rumgespielt, finde aber keine richtige Lösung.
Hier mein bisheriger Code- Versuch:

Die Funktion:
PHP-Code:
            function ReloadSperre()
{
    
// Dauer der Sperre in Sekunden
    
$sperrZeit 15// 3600 = 1 Stunde
    
$dateiname "reload.txt";
    
// Zeit bis Sperre abgelaufen
    
$reloadZeit 0;
    
// IP-Adresse
    
$ip $_SERVER['REMOTE_ADDR'];
    
// aktuelle Zeit
    
$zeit time();
    
$datei file($dateiname);
    
// Datei durchlaufen und auf Sperren prüfen
    
for($i 0$i sizeof($datei); $i++)
    {
        
$eintrag explode("|"$datei[$i]);
        
// Sperre aktiv?
        
if($eintrag[0] > $zeit $sperrZeit)
        {
            
// gleiche IP?
            
if(trim($eintrag[1]) == $ip)
            {
                
// Restdauer der Sperre berechnen
                
$reloadZeit $sperrZeit - ($zeit $eintrag[0]);
            }
            
// Zeile wieder dem Dateiinhalt hinzufügen
            
$neuerInhalt .= $datei[$i];
        }        
    }
    
// Keine Sperre => neuen Eintrag erzeugen
    
if($reloadZeit == 0)
        
$neuerInhalt .= $zeit."|".$ip."\n";
    
// Daten in Datei speichern
    
$handle fopen($dateiname"w");
    
fwrite($handle$neuerInhalt);
    
fclose($handle);
    
$handle2 fopen($datei"w");
    
fwrite($handle2$startwert);
    
fclose($handle2);
    
// Restzeit zurückgeben
    
return $reloadZeit;

Der eigentliche Inhalt:
PHP-Code:
        $reload ReloadSperre();
        if(
$reload 0) {
            echo 
"Du musst noch ".sprintf("%02d:%02d:%02d",
                
$reload 60 60, ($reload 60) % 60$reload 60)." warten, bis du dich erneut einloggen kannst.";
        } else { 
Vielen Lieben Dank!
 

Stichworte
ip sperre, zeit


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
MySQL Order By datum, Zeit ? S3Ri0US PHP Grundlagen 9 02.08.2008 09:30:56
Datensatz nach bestimmter Zeit löschen? Distructive PHP Grundlagen 2 23.03.2008 00:18:52
SELECT - Gruppierung nach Typ und Zeit StefanRiC MySQLi/PDO/(MySQL) 5 30.12.2006 12:45:22
Abfrage der Zeit in einer datetime - Spalte nurm MySQLi/PDO/(MySQL) 3 05.09.2006 13:24:33
Datum- Zeit gibts jeweils alleine aber nicht kombiniert Generator MySQLi/PDO/(MySQL) 1 12.08.2006 13:14:52


Alle Zeitangaben in WEZ +2. Es ist jetzt 22:39:22 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt