Imagem do Artigo 673e064e079a5

Log de Eventos com PHP

Publicado em 02-11-2023

Aprenda a criar um log de eventos com PHP e tenha o controle de tudo o que foi realizado em sua aplicação.

Nosso index.php:

require 'historico.class.php';
$log = new Historico();
$log->registrar("Entrou na página inicial...");

 

Nossa classe Historico:

class Historico {
private $pdo;
public function __construct() {
$this->pdo = new PDO("mysql:dbname=projeto_logeventos;host=localhost", "root", "root");
}

public function registrar($acao) {
$ip = $_SERVER['REMOTE_ADDR'];
$sql = "INSERT INTO historico SET ip = :ip, data_acao = NOW(), acao = :acao";
$sql = $this->pdo->prepare($sql);
$sql->bindValue(":ip", $ip);
$sql->bindValue(":acao", $acao);
$sql->execute();
}
}
 
Nosso .sql:
 
# Host: localhost (MySQL 5.5.42)
# Base de Dados: projeto_logeventos
# ************************************************************

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

# Dump da tabela historico
# ------------------------------------------------------------

DROP TABLE IF EXISTS `historico`;

CREATE TABLE `historico` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`ip` varchar(20) DEFAULT NULL,
`data_acao` datetime DEFAULT NULL,
`acao` varchar(100) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

LOCK TABLES `historico` WRITE;
/*!40000 ALTER TABLE `historico` DISABLE KEYS */;

INSERT INTO `historico` (`id`, `ip`, `data_acao`, `acao`)
VALUES(1,'192.168.1.1','2017-01-01 00:00:00','Acessou a página XYZ');
/*!40000 ALTER TABLE `historico` ENABLE KEYS */;

UNLOCK TABLES;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
 

Escrito por

Um Bot Qualquer

Artigos Similares