Tul xxx Tul
User / IP
:
216.73.216.183
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
/
parqueo
/
Models
/
Viewing: UsuariosModel.php
<?php class UsuariosModel extends Query { private $usuario, $nombre, $clave, $id_caja, $id, $estado, $cargo, $email, $img; public function __construct() { parent::__construct(); } public function getUsuario(string $usuario, string $clave) { $sql = "SELECT * FROM usuarios WHERE email = '$usuario' AND clave = '$clave'"; $data = $this->select($sql); return $data; } public function registrarAuditoria(int $id_user, string $accion, string $descripcion, string $ip_remota, ?string $ip_cliente, string $navegador) { $sql = "INSERT INTO auditoria(usuario_id, accion, descripcion, ip_remota, ip_cliente, navegador) VALUES (?,?,?,?,?,?)"; $datos = array($id_user, $accion, $descripcion, $ip_remota, $ip_cliente, $navegador); return $this->save($sql, $datos); } // Obtener todos los usuarios o por búsqueda public function getUsuarios(string $search = '') { if ($search !== '') { // Filtrado simple usando LIKE en usuario, nombre o email $sql = "SELECT * FROM usuarios WHERE usuario LIKE '%$search%' OR nombre LIKE '%$search%' OR email LIKE '%$search%'"; } else { $sql = "SELECT * FROM usuarios"; } $data = $this->selectAll($sql); // selectAll es tu función que ejecuta la consulta y devuelve array return $data; } // UsuariosModel.php public function insertarUsuario(string $nombre, string $email, string $clave, string $cargo) { $this->nombre = $nombre; $this->email = $email; $this->clave = MD5($clave); $this->cargo = $cargo; $sql = "INSERT INTO usuarios (nombre, email, clave, cargo, estado, creado) VALUES (?, ?, ?, ?, '1', NOW())"; $params = [$this->nombre, $this->email, $this->clave, $this->cargo]; $data = $this->save($sql, $params); if ($data == 1) { return ['success' => true]; } else { return ['success' => false, 'error' => 'No se pudo registrar el usuario']; } } // En UsuariosModel.php // UsuariosModel.php public function existeEmail(string $email) { $sql = "SELECT id FROM usuarios WHERE email = '$email' LIMIT 1"; $result = $this->select($sql); return !empty($result); // true si existe, false si no } public function getUsuarioById(int $id) { $sql = "SELECT * FROM usuarios WHERE id = $id"; $data = $this->select($sql); return $data; } // Actualizar usuario public function actualizarUsuario($id, $nombre, $email, $claveEncriptada, $cargo, $estado) { $sql = "UPDATE usuarios SET nombre = '$nombre', email = '$email', clave = '$claveEncriptada', cargo = '$cargo', estado = $estado WHERE id = $id"; return $this->save($sql, []); } public function accion($id, $accion) { switch ($accion) { case 'eliminar': $sql = "DELETE FROM usuarios WHERE id = $id"; $data = $this->save($sql, []); return $data == 1; case 'inactivar': $sql = "UPDATE usuarios SET estado = '0' WHERE id = $id"; $data = $this->save($sql, []); return $data == 1; case 'reintegrar': $sql = "UPDATE usuarios SET estado = '1' WHERE id = $id"; $data = $this->save($sql, []); return $data == 1; default: return false; } } public function getUserById(int $id) { // Traer solo id y nombre del usuario $sqlUsuario = "SELECT id, nombre FROM usuarios WHERE id = $id"; $usuario = $this->select($sqlUsuario); if (!$usuario) { return null; // Si no existe usuario } // Traer permisos del usuario con JOIN $sqlPermisos = "SELECT p.nombre FROM usuario_permisos up INNER JOIN permisos p ON up.permiso_id = p.id WHERE up.usuario_id = $id"; $permisos = $this->selectAll($sqlPermisos); // Array simple de permisos $usuario['permisos'] = array_column($permisos, 'nombre'); return $usuario; } public function updateUserPermisos(int $usuarioId, array $permisos) { // 1. Eliminar todos los permisos actuales del usuario $sqlDelete = "DELETE FROM usuario_permisos WHERE usuario_id = $usuarioId"; $this->save($sqlDelete, []); // 2. Insertar los nuevos permisos foreach ($permisos as $permisoNombre) { // Obtener el ID del permiso por su nombre $sqlPermiso = "SELECT id FROM permisos WHERE nombre = '{$permisoNombre}'"; $permiso = $this->select($sqlPermiso); if (!empty($permiso)) { $permisoId = $permiso['id']; $sqlInsert = "INSERT INTO usuario_permisos (usuario_id, permiso_id) VALUES ($usuarioId, $permisoId)"; $this->save($sqlInsert, []); } } return true; } public function actualizarPassword(int $idUsuario, string $clave) { // Encriptar la contraseña con SHA-256 $hash = hash("SHA256", $clave); // SQL para actualizar solo la contraseña $sql = "UPDATE usuarios SET clave = '$hash' WHERE id = $idUsuario"; // Ejecutar usando tu método save $data = $this->save($sql, []); // Retornar true si se actualizó correctamente return $data == 1; } public function getUserId(int $id) { // Traer solo nombre del usuario (sin id) $sqlUsuario = "SELECT nombre FROM usuarios WHERE id = ?"; $usuario = $this->select($sqlUsuario, [$id]); if (!$usuario) { return null; // Si no existe usuario } // Traer permisos del usuario con JOIN $sqlPermisos = "SELECT p.nombre FROM usuario_permisos up INNER JOIN permisos p ON up.permiso_id = p.id WHERE up.usuario_id = ?"; $permisos = $this->selectAll($sqlPermisos, [$id]); // Array simple de permisos $usuario['permisos'] = array_column($permisos, 'nombre'); return $usuario; } }
Coded With 💗 by
0x6ick