'Acceso no autorizado.']); exit; } $data = json_decode(file_get_contents('php://input'), true); if (!$data || !isset($data['id']) || !isset($data['field']) || !isset($data['value'])) { http_response_code(400); echo json_encode(['error' => 'Datos incompletos.']); exit; } $video_id = $data['id']; $field = $data['field']; $value = $data['value']; // Whitelist allowed fields for security $allowed_fields = ['material', 'estado', 'angulo_video']; if (!in_array($field, $allowed_fields)) { http_response_code(400); echo json_encode(['error' => 'Campo no permitido.']); exit; } try { $pdo = db(); $sql = "UPDATE marketing_videos SET $field = ? WHERE id = ?"; $stmt = $pdo->prepare($sql); $stmt->execute([$value, $video_id]); echo json_encode([ 'success' => true, 'message' => 'Campo actualizado correctamente.' ]); } catch (PDOException $e) { http_response_code(500); echo json_encode(['error' => 'Error al actualizar la base de datos: ' . $e->getMessage()]); } ?>