1ra Versión
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
<?php
|
||||
session_start();
|
||||
require_once 'conexion.php';
|
||||
|
||||
// Respuesta por defecto
|
||||
header('Content-Type: application/json');
|
||||
|
||||
if ($_SERVER["REQUEST_METHOD"] != "POST") {
|
||||
echo json_encode(['success' => false, 'message' => 'Método no permitido']);
|
||||
exit();
|
||||
}
|
||||
|
||||
// Obtener id del usuario a eliminar
|
||||
$id = isset($_POST['id']) ? intval($_POST['id']) : 0;
|
||||
|
||||
if ($id <= 0) {
|
||||
echo json_encode(['success' => false, 'message' => 'ID inválido']);
|
||||
exit();
|
||||
}
|
||||
|
||||
// Prevenir la eliminación del usuario actual (si es necesario)
|
||||
if (isset($_SESSION['id_usuario']) && $_SESSION['id_usuario'] == $id) {
|
||||
echo json_encode(['success' => false, 'message' => 'No puedes eliminar tu propia cuenta']);
|
||||
exit();
|
||||
}
|
||||
|
||||
// Obtener el ID del primer usuario registrado para protegerlo
|
||||
$primerUsuarioQuery = "SELECT MIN(ID_Usuario) AS primer_id FROM usuarios";
|
||||
$primerUsuarioStmt = $conexion->prepare($primerUsuarioQuery);
|
||||
$primerUsuarioStmt->execute();
|
||||
$primerUsuarioResult = $primerUsuarioStmt->get_result();
|
||||
$primerUsuarioId = (int) $primerUsuarioResult->fetch_assoc()['primer_id'];
|
||||
$primerUsuarioStmt->close();
|
||||
|
||||
if ($primerUsuarioId > 0 && $id === $primerUsuarioId) {
|
||||
echo json_encode(['success' => false, 'message' => 'El administrador supremo no puede ser eliminado']);
|
||||
exit();
|
||||
}
|
||||
|
||||
// Eliminar el usuario
|
||||
$query = "DELETE FROM usuarios WHERE ID_Usuario = ?";
|
||||
$stmt = $conexion->prepare($query);
|
||||
$stmt->bind_param("i", $id);
|
||||
|
||||
if ($stmt->execute()) {
|
||||
if ($stmt->affected_rows > 0) {
|
||||
echo json_encode(['success' => true, 'message' => 'Usuario eliminado exitosamente']);
|
||||
} else {
|
||||
echo json_encode(['success' => false, 'message' => 'El usuario no existe']);
|
||||
}
|
||||
} else {
|
||||
echo json_encode(['success' => false, 'message' => 'Error al eliminar el usuario']);
|
||||
}
|
||||
|
||||
$stmt->close();
|
||||
$conexion->close();
|
||||
?>
|
||||
Reference in New Issue
Block a user