Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  Programmierung mit PHP  Teil von  Servervariablen
  +++ 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.   

 
 
Erzeugen von eigenen Logfiles




Mit den Servervariablen lassen sich auf einfache Weise auch eigene Logfiles erzeugen. Üblicherweise sind die meisten Webserver so eingestellt, dass solche Logfiles automatisch angelegt werden. Sie als Entwickler haben jedoch nicht bei jedem Provider einen direkten Zugriff auf Logfiles. In diesem Fall kann Ihnen PHP beim Anlegen Ihrer eigenen Logfiles behilflich sein. Sie werden natürlich nicht sämtliche Servervariablen in Ihr Logfile aufnehmen müssen. Es empfiehlt sich, folgende Servervariablen zu erfassen:
  • $REMOTE_ADDR
  • $REQUEST_METHOD
  • $PHP_SELF
  • $HTTP_USER_AGENT
  • $HTTP_REFERER

Zusätzlich sollten Sie noch mithilfe der date()- und time()-Funktion das Datum und die Uhrzeit des Aufrufs erfassen. Übertragen Sie folgendes Skript in die Datei logfile.php:

<?php

$logdatei=fopen("logs/logfile.txt","a");
fputs($logdatei,
    date("d.m.Y, H:i:s",time()) .
    ", " . $_SERVER['REMOTE_ADDR'] .
    ", " . $_SERVER['REQUEST_METHOD'] .
    ", " . $_SERVER['PHP_SELF'] .
    ", " . $_SERVER['HTTP_USER_AGENT'] .
    ", " . $_SERVER['HTTP_REFERER'] ."\n"
    );
fclose($logdatei);

?>

Die Serverdaten werden in die Datei logfile.txt im Verzeichnis logs gespeichert. Sie müssen lediglich dafür sorgen, dass das Verzeichnis existiert und die entsprechenden Zugriffsrechte gesetzt wurden, um eine Datei zu erzeugen.

Mit der Funktion fopen() wird die Datei geöffnet und in den entsprechenden Modus versetzt (a = append, hinzufügen). In dieser geöffneten Datei wird nun mit fputs() eine Zeichenfolge geschrieben, die das aktuelle Datum und die aktuelle Uhrzeit enthält, gefolgt von der IP-Adresse des Clientrechners, anschließend die Art der Anfrage, den Namen des aufgerufenen Skripts, Informationen über den Browser und die Seite, welche der Browser vorher besucht hat. Vergessen Sie nicht, noch einen Zeilenvorschub hinzuzufügen \n, damit gewährleistet werden kann, dass jeder Aufruf in einer eigenen Zeile angelegt wird. Die Einträge der einzelnen Aufrufe werden jeweils durch ein Komma voneinander getrennt, sodass die Daten auch leicht in Programme wie Access oder Excel eingelesen werden können. Am Ende des Skripts wird noch dafür gesorgt, dass die Datei mit fclose() wieder geschlossen wird.

Hinweis: Nähere Informationen zu fopen(), fclose() etc. erhalten Sie im Abschnitt 4.7 »Dateisystem via PHP«.


Einsatz der logfile.php

Um für jede Seite Ihrer Website die logfile.php automatisch mit aufrufen zu lassen und somit einsetzen zu können, bietet es sich an, die Datei im Header einer jeden Seite mithilfe einer include()-Anweisung einzubinden.

Beispiel

<?php
include("logfile.php");
?>

Dies führt dazu, dass bei jedem Seitenaufruf eine neue Zeile in der Datei logfile.txt mit den entsprechenden Daten erzeugt wird.

Diese Daten können Sie nun nach Belieben mit anderer Software bearbeiten. Sie können auch wahlweise zusätzliche Servervariablen hinzufügen und damit die Aussagekraft Ihrer Logfiles erweitern.


 




:: 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