begin process at 2012 05 28 20:42:05
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

POO

 > 

Classes & Objets

 > 

Class tracabilité


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Class tracabilité

mardi 22 mars 2011 à 13:01:09 | Class tracabilité

simo842

svp j'ai pas bien compris la fonctionnalité de cette class qui a pour but de creer des fichiers log
Code PHP :
<?php
define('WATCHDOG_INFO', 1);
define('WATCHDOG_NOTICE', 2);
define('WATCHDOG_WARNING', 3);
define('WATCHDOG_ERROR', 4);
define('WATCHDOG_ALERT', 5);
define('WATCHDOG_URGENCY', 6);
 
class iJ_Provider_Watchdog {
    private $conn;
    
    public function __construct(){
        $this->conn = iJ_Core::instance()->conn;
    }
    
    public function log($severity, $type, $message, $location = '', $variables = ''){ 
        if(!$this->conn->hasError()){
            if(strtolower($location) === 'self')
                $location = $_SERVER['REQUEST_URI'];
                
            $watch = array(
            	'type' => $type,
            	'timestamp' => time(),
            	'message' => $message,
            	'location' => $location,
            	'hostname' => iJ_Core::instance()->request->getVisitorIP(),
            	'severity' => $severity,
            	'variables' => $variables,
            	'id_user' => (iJ_User::current() === NULL) ? 0 : iJ_User::current()->getId(),
            );
            
            $this->conn->insert('watchdog', $watch, FALSE);
        }        
    }
    
    public function getLogs($severity = NULL, $type = NULL, $limitstart = 0, $limitend = 25){
        $query = 'SELECT * FROM watchdog WHERE 1=1';
        
        if($severity !== NULL)
            $query .= ' AND severity='.intval($severity);
        
        if($type !== NULL)
            $query .= ' AND type="'.$this->conn->escapeString($type).'"';
        
        $query .= sprintf(' ORDER BY timestamp DESC LIMIT %d, %d', $limitstart, $limitend);
        $q = $this->conn->query($query);
        $watchs = array();
        while($watch = $this->conn->fetchArray($q)){
            $watch['icon'] = $this->getIcon($watch);
            array_push($watchs, $watch);
        }
        return $watchs;
    }
    
    public function getLogsBetween($timestamp1, $timestamp2){
        $q = $this->conn->queryf('SELECT * FROM watchdog WHERE timestamp BETWEEN %d AND %d', $timestamp1, $timestamp2);        
        $watchs = array();
        while($watch = $this->conn->fetchArray($q)){
            $watch['icon'] = $this->getIcon($watch);
            array_push($watchs, $watch);
        }
        return $watchs;
    }
    
    private function getIcon($watch){
        switch($watch['severity']){
            case WATCHDOG_INFO:
                return 'images/icons/watchdog_ok.png';
            case WATCHDOG_NOTICE:
                return 'images/icons/watchdog_notice1.png';
            case WATCHDOG_WARNING:
                return 'images/icons/watchdog_warning.png';
            case WATCHDOG_ERROR:
                return 'images/icons/watchdog_error.png';
            case WATCHDOG_ALERT:
                return 'images/icons/watchdog_error.png';
            case WATCHDOG_URGENCY:
                return 'images/icons/watchdog_error.png';
        }
        return 'images/icons/watchdog_warning.png';
    }
    
    public function getTypes(){
        return $this->conn->fetchAll('SELECT DISTINCT type FROM watchdog', TRUE);
    }
    
    public function deleteOldLogs($limit = 1000){
        $this->conn->queryf('DELETE FROM watchdog WHERE id_watchdog NOT IN (SELECT id_watchdog FROM watchdog ORDER BY timestamp DESC LIMIT 0, %d)', $limit);
    }
    
    public function deleteAllLogs(){
        $this->conn->query('DELETE FROM watchdog'); 
    }
}

svp je veut une explication bien détaillé
merci d'avance


Cette discussion est classée dans : return, conn, watch, watchdog, severity


Répondre à ce message

Sujets en rapport avec ce message

Problème de compatibilité de script [ par Chris54 ] Bonjour,J'ai un problème d'execution d'un script javascript sous netscape alors qu'il fonctionne parfaitement sous IE mais je ne sais pas pourquoi.Que Return-Path [ par tardigrade ] Bonjour à tous,J'ai un problème de Return-Path lorsque j'utilise la fonction mail() de PHP.Lorsque que je passe au paramètre haeder de la fonction la help ~:^/ [ par ekinoks ] Salut !bon bha voilou... g touvoir un code sur internet permétent de testé si des repertoir existe ou pas sans avoir de message d'eureur. le pt proble Question sur formulaire en php et controle en js [ par jagdjg ] Je vais essayer d'expliquer: j ai donc un formulaire qui est controle par une fonction javascript, jusque la tout va bien.Le probleme c est que je gen ftp EN LOCAL [ par zakuli ] Bonjour,Débutant en ftp, je voudrais tout simplement exécuter LOCALEMENT le script ci joint :$conn_id = ftp_connect($ftp_server); $login_result = ftp_ TRansfert fichier FTP [ par floceam ] J'ai un soucis ! Help !Voila, je fait un site, et je veux pouvoir telecharger les fichiers sur mon serveur par simple envoir de formulaire!Or, il se p return et while [ par righton ] Bonjour, voilà mon pb : j'ai une fonction dans laquelle je créé un tableau. Cette fonction retourne des valeurs, et je souhaite ajouter au return les Instancier une classe PHP5 dans un tableau Multidimensionnel [ par critters ] Salut tout le monde, dans le cadre d'un stage je dois faire un agenda qui s'alimente directement à partir d'une base de données contenant des interven vérification de chaines de caractères [ par Rankin ] Bonjour à tous, Bon mon problème n'est pas original mais malgré les réponses que j'ai trouvées sur ce forum, je n'arrive pas à faire fonctionner des f Erreur fsockopen() [ par cseagle ] Bonjour, J'essaye d'utiliser cette fonction pour vérifier l'éxistence de l'email. Le problème c'est qu'avec une adresse du type t@tyuiop.com il me fa


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,934 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales