Montag, 24. Oktober 2011

Eine einfach Loggin-Routine für php-Skripten

Eine einfache loggin-Routine, die zur kontrolle die Aufrufe in einer Datei speichert und wenn diese voll ist, per email versendet und die Datei leert. Ich habe sie in verschiedene Projekte eingebaut, und möchte sie hier vorstellen.

Hier am Beispiel eines Einbaus in einer index.php, die mit dem Parameter $seite aufgerufen wird:

$logtext=date("d.m.Y H:i:s")." - "; // aktuelles Datum
$logtext.="Seite: $seite \n"; // Seiten-Parameter
$logtext.="Query: ".$_SERVER['query']."\n\n"; // die gesamte query, die der User verwendet hat

##############

$logdatei="admin/data/tmplog.txt";

if(file_exists($logdatei)) {
 if(filesize($logdatei) > 100000) {
       $mailtext=file($logdatei);
       $mailempfaenger="kontakt@blablabla__blabla.de";
       $betreff="Zugrifflogs User Archiv admin/data/tmplog.txt ";
       $from="From: webmaster@".$_SERVER['SERVER_NAME'];
       $mailversendet=@mail($mailempfaenger, $betreff, $mailtext, $from);
       $fp=fopen($logdatei, "w");    // löscht inhalt
       @fclose($fp);
 }
}


if(!file_exists($logdatei)) {
 echo "$logdatei existiert nicht, lege sie an <br>"; // hier könnte man noch chmod-Abfragen einbauen
 $fp=fopen($logdatei, "w");
 @fclose($fp);
}

$fp="";

    $fp=@fopen($logdatei, "a");

    if($fp) {
      $ok=@fwrite($fp,$logtext);
      @fclose($fp);
    }

Keine Kommentare: