Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  Lösungen für den Alltag
  +++ SELFPHP CronJob-Service :: Jetzt auch als Professional-Version verfügbar! +++



:: Anbieterverzeichnis ::

Globale Branchen

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

 

:: SELFPHP Forum ::

Fragen rund um die Themen PHP? In über 120.000 Beiträgen finden Sie sicher die passende Antwort!  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

:: Qozido ::

Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.   

 
 
Online-Besucherzähler




Ein Counter (Besucherzähler), welcher den Besucher der Website darüber aufklärt, wie viele Besucher bereits vor ihm die jeweilige Website oder Webanwendung aufgerufen haben, eignet sich für hervorragend als Beispiel für PHP-Programmierung und den Einsatz in Dreamweaver. Dabei setze ich allerdings einige fundamentale Grundkenntnisse wie den Umgang mit Variablen, benutzerdefinierten Funktionen und include()-Bestandteilen voraus.

Werfen wir doch gleich mal gemeinsam einen Blick auf die Codezeilen.


Textcounter

<?php

// Simple Counter v1.0
// Für die korrekte Funktionsweise des Counters ist darauf zu
// achten, dass die entsprechenden Schreibrechte auf dem
// Webserver gesetzt sind.

// Counterdateiname
$datei="counter.txt";

// Anzahl der führenden Nullen
$stellen = 5;

if(file_exists($datei)){
  // Falls die Datei existiert, wird sie ausgelesen und
  // der dort enthaltene Wert um Eins erhöht.
  $fp=fopen($datei,"r+");
  $zahl=fgets($fp,$stellen);
  $zahl++;
  rewind($fp);
  flock($fp,2);
  fputs($fp,$zahl,$stellen);
  flock($fp,3);
  fclose($fp);
}else{
  // Die Datei counter.txt existiert nicht, sie wird
  // neu angelegt und mit dem Wert 1 gefüllt.
  $fp=fopen($datei,"w");
  $zahl="1";
  fputs($fp,$zahl,$stellen);
  fclose($fp);
}

// Diese Funktion sorgt für die Formatierung
// in diesem Fall für die führenden Nullen
$zahl=sprintf("%0".$stellen."d",$zahl);

?>

Ich empfehle Ihnen, diese Codezeilen in eine Datei namens counter.php abzuspeichern. Durch die if-Anweisung wird entweder eine vorhandene Textdatei counter.txt ausgelesen und deren Wert anschließend um 1 erhöht oder eine neue Textdatei counter.txt angelegt und der Wert mit 1 initialisiert. Die Variable $fp enthält den Dateizeiger (engl. FilePointer), welcher auf die entsprechende Datei verweist. Die Funktion rewind() sorgt dafür, dass der Dateizeiger wieder an die Anfangsposition zurückgesetzt wird, um anschließend mit der Funktion fputs() den in der Variablen $zahl enthaltenen Wert zu verwenden und den bisherigen Inhalt der Datei zu überschreiben. Mithilfe der Funktion flock() wird sichergestellt, dass die Datei während des Schreibvorgangs verriegelt wird. Dies ist notwendig, um beispielsweise einen simultanen Zugriff auf die Datei zu verhindern, durch diesen könnte die Datei möglicherweise zerstört werden und es zu einem Datenverlust kommen. Im Fall des Besucherzählers würde dies zum Zurücksetzen des Besucherzählers führen.

Im letzten Schritt wird der Inhalt der Variablen $zahl formatiert, und zwar so, dass eine festgelegte Zahl von führenden Nullen hinzugefügt wird. Die Funktion sprintf() dient dabei der formatierten Ausgabe von Zeichenketten. Der Aufruf des Counters kann anschließend aus jedem beliebigen PHP-Skript Ihrer Website erfolgen, und zwar wie folgt:

<?php

include("counter.php");
echo $zahl;

?>

Ausgabe
00001

Natürlich steht es Ihnen frei, die Ausgabe des Counters mithilfe von HTML-Tags zu formatieren. Es liegt bei Ihnen, die Formatierung entweder in der Code- oder der Entwurfsansicht durchzuführen.



Bild 5.1: simplecounter.php-Datei in Dreamweaver (Code-/Entwurfsansicht)

Beispiel

<html>
<head>
<title>Simple Counter</title>
</head>
<body>
<font face=Arial color=blue size=5>Besucher:</font>
<?php

include("counter.php");
echo "<font face=Arial color=blue size=5>$zahl</font>";

?>
</body>
</html>




Bild 5.2: Im Einsatz: Der formatierte Besucherzähler (Textversion)


 Grafikcounter
 Counter mit IP-Sperre
 User online


 




:: Premium-Partner ::

Webhosting/Serverlösungen


Premium-Partner MECO Systemhaus GmbH & Co. KG
Premium-Partner PSW GROUP GmbH & Co. KG
Premium-Partner BPI-Systeme
Premium-Partner Pixel X
Premium-Partner
 

:: SELFPHP Sponsoren ::


Microsoft Deutschland GmbH
twosteps.net - ...Premium-Webhosting
Sedo - Bei uns wird PHP großgeschrieben
hostfactory.ch - OptimaNet Schweiz AG
ZEND - The PHP Company
Kaspersky Labs
HighText iBusiness
SELFPHP Sponsoren
 

Qozido


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