Temat: Dziennik zdarzeń / Raportowanie o błędach
Data: 2006-09-14 o godz. 13:42:54
Autor: As


Funkcja is_error to nakładka na wbudowaną funkcję error_log. Poniższa funkcja doskonale sprawdza się w raportowaniu i analizie przeróżnych błędów i wydarzeń, które często dzieją się w jakiś wyjątkowych niestandardowych sytuacjach np. brak połączenia z baza danych.

<?php

/***************************\  

  ^ Grupa: TS  
  ^ www.Twoja-Strona.Net  
  ^ Funkcja: is_error 
  ----------------------- 
  Wymagane: PHP >= 3  
  ----------------------- 
  + Funkcja przeznaczona
    do wykrywania błędów w
    skrypcie lub naruszających 
    bezpieczeństwo zdarzeń 
  ----------------------- 
  + Zastosowanie: 
    - Kontrola błędów 
    - Dziennik zdarzeń 
  
\***************************/  

function is_error($typ=0$name=''$message='Błąd ogólny'$exit=0) {

    
/*===========================*\
       + $message - typ string
       + $typ - typ: int (0,3) 
       + $exit - typ: int (0,1)   
       + $name - typ: string    
    \*===========================*/
      
    
$typ = ($typ || $typ 0) ? $typ;
    
$errmsg "Data (".date("Y-m-d, H:i:s").") ~Błąd w skrypcie w pliku '".__FILE__."', w linii '".__LINE__."': $message\n";
    if (!
eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,6}$"$name) && $typ == 1) {     
        return 
false;
    } else {
        if (@
error_log($errmsg$typ$name)) {
            if (
$exit == 1) {echo exit($errmsg);} 
            return 
true;  
        } else {
            return 
false;
        }  
    }   

}

/* Przykład wykorzystania funkcji */

if ($_POST[password] != 'haslo') {
    
    
// Błąd zostanie zapisany w pliku "errorlog.txt"
    
is_error(3'errorlog.txt''Błąd logowania');
    
    
// Powiadomienie o błędzie emailem 
    
is_error(1'adres@email''Błąd logowania');

    
// Błąd zostanie zapisany w pliku "errorlog2.txt", i nastąpi zakończenie wykonywania skryptu
    
is_error(3'errorlog2.txt''Błąd logowania'1); 



?>








Artykuł jest z Twoja-Strona.Net
http://twoja-strona.net/html

Adres tego artykułu to:
http://twoja-strona.net/html/Biblioteka_Art820.html