29 lines
		
	
	
	
		
			707 B
		
	
	
	
		
			PHP
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
	
		
			707 B
		
	
	
	
		
			PHP
		
	
	
		
			Executable file
		
	
	
	
	
| <?php
 | |
| class Logger_SQL {
 | |
| 
 | |
| 	private $pdo;
 | |
| 
 | |
| 	function log_error($errno, $errstr, $file, $line, $context) {
 | |
| 
 | |
| 		// separate PDO connection object is used for logging
 | |
| 		if (!$this->pdo) $this->pdo = Db::instance()->pdo_connect();
 | |
| 
 | |
| 		if ($this->pdo && get_schema_version() > 117) {
 | |
| 
 | |
| 			$owner_uid = $_SESSION["uid"] ? $_SESSION["uid"] : null;
 | |
| 
 | |
| 			if (DB_TYPE == "mysql")
 | |
| 				$context = substr($context, 0, 65534);
 | |
| 
 | |
| 			$sth = $this->pdo->prepare("INSERT INTO ttrss_error_log
 | |
| 				(errno, errstr, filename, lineno, context, owner_uid, created_at) VALUES
 | |
| 				(?, ?, ?, ?, ?, ?, NOW())");
 | |
| 			$sth->execute([$errno, $errstr, $file, $line, $context, $owner_uid]);
 | |
| 
 | |
| 			return $sth->rowCount();
 | |
| 		}
 | |
| 
 | |
| 		return false;
 | |
| 	}
 | |
| 
 | |
| }
 | 
