1: <?php
2: /**
3: * Pry Framework
4: *
5: * LICENSE
6: *
7: * This source file is subject to the new BSD license that is bundled
8: * with this package in the file LICENSE.txt.
9: *
10: * @version $Revision: 276 $
11: */
12:
13: /**
14: * Classe d'ecriture de log dans une base de données
15: *
16: * @package Log
17: * @subpackage Log_Writer
18: * @version 1.2.0
19: * @author Olivier ROGER <oroger.fr>
20: *
21: */
22: class Log_Writer_Bd extends Log_Writer_Abstract
23: {
24: private $table;
25:
26: /**
27: * Objet base de données
28: * @var Zend_Db_Adapter_Abstract
29: */
30: private $oSql;
31:
32: /**
33: * Constructeur
34: *
35: * @param string $table contenant les logs
36: * @param Zend_Db_Adapter_Abstract Objet sql
37: */
38: public function __construct($table,$sql)
39: {
40: $this->table = $table;
41: $this->oSql = $sql;
42: //var_dump($this->oSql);
43: }
44:
45: /**
46: * Log du message dans une base de données
47: *
48: * @param string $message
49: * @param string $level
50: * @access protected
51: */
52: protected function _write($message,$level)
53: {
54: $prefixe = ($this->mode == self::MODE_MINI)?'':'['.date("d/m/Y - H:i:s").'] ('.$this->txtSeverity[$level].') ';
55:
56: $prep = $this->oSql->prepare('INSERT INTO '.$this->table.' (level,date,message) VALUES(:level,:date,:message)');
57: $prep->execute(array(':level'=>$level,':date'=>date("Y-m-d H:i:s"),':message'=>$prefixe.$message));
58:
59: }
60: }
61: ?>