<?php header("Content-Type: text/html"); require_once "conexion-bd.php"; if ($_SERVER['REQUEST_METHOD'] !== 'GET') { http_response_code(405); echo "Método no permitido"; exit(); } // 🔸 Mover eventos pasados a historial_eventos $sql_mover = "INSERT INTO historial_eventos (id, artista, fecha, lugar_id, precio, descripcion, imagen) SELECT id, artista, fecha, lugar_id, precio, descripcion, imagen FROM conciertos WHERE fecha < NOW()"; if (!$conn->query($sql_mover)) { error_log("Error al mover eventos pasados: " . $conn->error); } // 🔸 Eliminar eventos ya movidos de la tabla conciertos $sql_eliminar = "DELETE FROM conciertos WHERE fecha < NOW()"; if (!$conn->query($sql_eliminar)) { error_log("Error al eliminar eventos pasados: " . $conn->error); } // 🔹 Continuar con la lógica de consulta y presentación de eventos actuales $sql = "SELECT c.id, c.artista, c.fecha, c.imagen, c.descripcion, c.precio, l.nombre AS lugar, l.capacidad AS cupos_totales, (l.capacidad - COUNT(va.id)) AS cupos_disponibles FROM conciertos c JOIN lugares l ON c.lugar_id = l.id LEFT JOIN ventas v ON v.evento_id = c.id LEFT JOIN ventas_asientos va ON va.venta_id = v.id GROUP BY c.id ORDER BY c.fecha ASC"; $result = $conn->query($sql); if ($result->num_rows > 0) { while ($concierto = $result->fetch_assoc()) { $imagen = !empty($concierto['imagen']) ? htmlspecialchars($concierto['imagen']) : "img/images.jpg"; echo '<div class="evento"> <img src="' . $imagen . '" alt="Concierto de ' . htmlspecialchars($concierto['artista']) . '"> <h3>Concierto de ' . htmlspecialchars($concierto['artista']) . '</h3> <p>' . htmlspecialchars($concierto['descripcion']) . '</p> <p>' . date("d M Y - H:i", strtotime($concierto['fecha'])) . ' - ' . htmlspecialchars($concierto['lugar']) . '</p> <p>Precio por boleto: $' . number_format($concierto['precio'], 2) . '</p> <p>Cupos disponibles: ' . $concierto['cupos_disponibles'] . '</p>'; if ($concierto['cupos_disponibles'] > 0) { echo '<button onclick="window.location.href=\'comprar-boletos.html?id=' . $concierto['id'] . '\'">Comprar boletos</button>'; } else { echo '<button disabled style="background-color: gray; cursor: not-allowed;">Agotado</button>'; } echo '</div>'; } } else { echo "<p>No hay conciertos disponibles.</p>"; } $conn->close(); ?>