Text-Counter mit IP-Sperre ( Cookies oder Datei)

In diesem Tutorial möchte ich erklären wir man auf 2 arten einen Counter Programmieren kann,nebenbei werden ein paar Datei Funktionen erklärt!

Einführung

In diesem Tutorial möchte ich erklären wir man auf 2 arten einen Counter Programmieren kann, nebenbei werden ein paar Datei Funktionen erklärt!

Bevor sie eines der Beiden Counter-Versionen ausprobieren, erstellen sie bitte eine datei mit dem Namen counter.dat mit dem Wert 0 und den CHMODS 666.

Cookies

Cookies( auch Kekse genannt) werden im Browser für eine bestimmte Zeit aufbewahrt und speicher'n Daten! ( Cookies werden automatisch ins PHP-Dokument eingelesen)

Datei Funktionen

Man kann mit PHP auch Dateien erstellen, dabei werden die Dateien in einen bestimmten 'Modus' geöffnet!

Modus Funktion  Dateizeiger Anlegen?
 r Lesen Anfang Nein
r+ Lesen und Schreiben  Anfang  Nein
w Lesen Anfang Ja
w+ Lesen und Schreiben Anfang Ja
a Schrieben Ende Ja
a+ Lesen und Schreiben Ende Ja

mit der Funktion rewind($datei); stellt man den Datenzeiger an den Anfang zurück.

Counter mit Cookies

<?php
 
//Liest die Ip aus!//
$ip getenv ("REMOTE_ADDR");
//Erstellt das Cookie mit den Inhalt der Variable $Ip
Und das Cookie wird nach 24st. ( +86400 wieder gelöscht!//
setcookie ("ipsperre",$iptime()+86400); 
 
//Überprüft ob das Cookie "ipsperre" schon vorhanden ist//
if(isset($ipsperre))
{
    
//Liest in den Array "lesaus" die datei counter.dat ein//
    
$lesaus file("counter.dat");
    
//Gibt den Array "lesaus" aus//
    
echo"$lesaus[0]"
}
    
// Ab hier beginnt die Verneinung von if(isset($ipsperre)) - sprich 'das cookie existiert nich'//
else
{
    
//Liest die datei counter.dat wieder in einen Array aus// 
    
$lesaus file("counter.dat"); 
    
//Der Ausgelsende Wert wird um 1 erhöt// 
    
$lesaus[0]++; 
    
//Die Datei counter.dat wird im Modus r+ (Lesen und Schreiben/Datenzeiger Am Anfang) geöffnet//
    
$datei fopen("counter.dat","r+");
    
//Der Variable $datenm wir der Ausgelsende ( und um 1erhöte) Wert zugeteilt//
    
$datenm="$lesaus[0]"
    
//Der Datenzeiger wird wieder an den Anfang zurückgesetzt//
    
rewind($datei);
    
//Der Wert der variable $datenm wird in die Datei geschrieben//
    
fwrite($datei,$datenm);
    
//Die Datei wird geschlossen//
    
fclose($datei);
    
//Der Wert der vorhin um1 erhört wurden ist,wird ausgegeben//
    
echo"Besucher:$lesaus[0]"
}
?>
 

Counter mit Dateien

<?php
 
//Liest die Ip aus!//
$ip getenv ("REMOTE_ADDR");
//Überprüfen ob Ip.dat schon erstellt ist//
if(file_exists("$ip.ip"))
{
    
//Liest in den Array "lesaus" die datei counter.dat ein//
    
$lesaus file("counter.dat");
    
//Gibt den Array "lesaus" aus//
    
echo"$lesaus[0]"
}
    
//Ab hier beginnt die Verneinung - sprich 'die datei $ip.ip existiert nicht'//
else
{
    
//Liest die datei counter.dat wieder in einen Array aus// 
    
$lesaus file("counter.dat");
    
//Der Ausgelsende Wert wird um 1 erhöt// 
    
$lesaus[0]++; 
    
//Die Datei counter.dat wird im Modus r+ (Lesen und Schreiben/Datenzeiger Am Anfang) geöffnet//
    
$datei fopen("counter.dat","r+");
    
//Der Variable $datenm wir der Ausgelsende ( und um 1erhöte) Wert zugeteilt//
    
$datenm="$lesaus[0]"
    
//Der Datenzeiger wird wieder an den Anfang zurückgesetzt//
    
rewind($datei);
    
//Der Wert der variable $datenm wird in die Datei geschrieben//
    
fwrite($datei,$datenm);
    
//Die Datei wird geschlossen//
    
fclose($datei);
    
//Der Wert der vorhin um1 erhört wurden ist,wird ausgegeben//
    
echo"$lesaus[0]";
    
//Die Datei $ip.ip wird im Modus 'w+' erstellt ( ist nötig für die IP-Sperre)//
    
$file fopen("$ip.ip","w+"); 
    
//Der Variable $datenm wird der wert $ip zugewiesen//
    
$datenm="$ip"
    
//In die Datei wird die Variable $ip geschrieben//
    
fwrite($file,$datenm);
    
//Die Datei wird geschlossen//
    
fclose($file);
}
?>  

Nachtrag

Natürlich kann man die IP's auch in einer Datei Speicher'n
oder hier draus einen Counter-Service erstellen!

Ratings

There are no comments available yet.

Here you can write a comment


Please enter at least 10 characters.
Loading... Please wait.
* Pflichtangabe

Related topics

Joomla! Starterhilfe

Dieses Tutorial begleitet Sie bei dem Einstieg in die Welt von dem CMS Joomla!. ...

werninator

Autor : werninator
Category: mySQL-Tutorials

Dateien per Userinterface hochladen

Um Dateien per Userinterface hochladen zu können, benötigt man vergleichbar wenige Kenntnisse in der Programmiersprache PHP ...

Lukas Beck

Autor : Lukas Beck
Category: PHP-Tutorials

abhängige Listen

In einem Formular sollen neben mehreren anderen Eingabefeldern auch zwei Listen (Select-Felder) zum Einsatz kommen. Dabei soll der Inhalt der zweiten Liste vom gewählten Wert der ersten Liste abhängig verändert werden. ...

Patrick_PQ

Autor : Patrick_PQ
Category: mySQL-Tutorials

How to effectively perform complex queries with SQL queries in MySQLi?

This MySQL tutorial explains how to efficiently perform complex SQL queries in MySQLi. We will look at various aspects of database querying and learn specific methods to fully utilise the power of MySQLi. ...

TheMax

Autor : TheMax
Category: mySQL-Tutorials

Webserver, Sicherheit ist realisierbar

Diese Facharbeit beschäftigt sich mit dem Herzstück eines Netzwerkes, dem Webserver. ...

me1@

Autor : me1@
Category: Linux & Server Tutorials

grafischen Counter

Oftmals wird gefragt wie man einen grafischen Counter mit PHP realisieren könnte. Hier ist die Antwort ...

t63@

Autor : t63@
Category: PHP-Tutorials

Joomla! Starterhilfe

Dieses Tutorial begleitet Sie bei dem Einstieg in die Welt von dem CMS Joomla!. ...

werninator

Autor : werninator
Category: mySQL-Tutorials

HTML5-Formulare mit jQuery.html5form

Mit dem von Matias Mancini machen Sie aus Ihrem Browser einen HTML5-Kompatiblen Bowser. Mit Einschränkungen aber ... ...

admin

Autor : admin
Category: Other tutorials

Publish a tutorial

Share your knowledge with other developers worldwide

Share your knowledge with other developers worldwide

You are a professional in your field and want to share your knowledge, then sign up now and share it with our PHP community

learn more

Publish a tutorial