diff --git a/clases/ClasePregunta.php b/clases/ClasePregunta.php index 6fca2d6..d7b17ff 100644 --- a/clases/ClasePregunta.php +++ b/clases/ClasePregunta.php @@ -57,60 +57,9 @@ class Pregunta { } } - public function cargarRespuestas() { - if ($this->idPregunta === null) return; + - $conexion = conexionBD(); - - if (is_array($conexion)) { - return $conexion; - } - - try { - $sql = "SELECT idRespuesta, nombreRespuesta, correcta FROM respuesta WHERE idPregunta = :idPreg"; - $stmt = $conexion->prepare($sql); - $stmt->execute([':idPreg' => $this->idPregunta]); - - $this->respuestas = $stmt->fetchAll(PDO::FETCH_ASSOC); - - } catch (PDOException $error) { - return [ - 'error' => 'Ocurrió un error al cargar las respuestas.', - 'error_tecnico' => $error->getMessage() - ]; - } - } - - public static function obtenerPorCategoria(int $idCategoria, int $limite = 10) { - $conexion = conexionBD(); - - if (is_array($conexion)) { - return $conexion; - } - - try { - $sql = "SELECT * FROM pregunta WHERE idCategoria = :idCat ORDER BY RAND() LIMIT :limite"; - $stmt = $conexion->prepare($sql); - - $stmt->bindValue(':idCat', $idCategoria, PDO::PARAM_INT); - $stmt->bindValue(':limite', $limite, PDO::PARAM_INT); - $stmt->execute(); - - $preguntas = []; - while ($datos = $stmt->fetch(PDO::FETCH_ASSOC)) { - $preg = new Pregunta((int)$datos['idCategoria'], $datos['nombrePregunta'], (int)$datos['idPregunta']); - $preg->cargarRespuestas(); - $preguntas[] = $preg; - } - return $preguntas; - - } catch (PDOException $error) { - return [ - 'error' => 'Ocurrió un error al obtener las preguntas aleatorias.', - 'error_tecnico' => $error->getMessage() - ]; - } - } + public static function getTodosIds()//devuelve solamente los id de todas las preguntas { diff --git a/controladores/ControladorPregunta.php b/controladores/ControladorPregunta.php index 09779fa..9dbfcb3 100644 --- a/controladores/ControladorPregunta.php +++ b/controladores/ControladorPregunta.php @@ -121,33 +121,4 @@ switch ($_POST['orden']) { ]); break; - - - - case 'obtenerPreguntasPorCategoria': - - $idCategoria = intval($_POST['idCategoria'] ?? 0); - $limite = intval($_POST['limite'] ?? 10); - - $preguntas = Pregunta::obtenerPorCategoria($idCategoria, $limite); - - // Si ha devuelto un array de errores (formato ['error'=>...]) lo mandamos tal cual - if (isset($preguntas['error'])) { - echo json_encode($preguntas); - break; - } - - // Convertimos cada objeto Pregunta en un array simple para poder mandarlo en JSON - $listado = []; - foreach ($preguntas as $p) { - $listado[] = [ - 'idPregunta' => $p->getIdPregunta(), - 'idCategoria' => $p->getIdCategoria(), - 'nombrePregunta' => $p->getNombrePregunta(), - 'respuestas' => $p->getRespuestas() - ]; - } - - echo json_encode($listado); - break; }