obtenerGeneroFemenino(); break; case 'Masculino': $cantidad = $graficos->obtenerGeneroMasculino(); break; case 'Prefiero no decirlo': $cantidad = $graficos->obtenerGeneroNoDefinido(); break; case 'Menor de 18 años': $cantidad = $graficos->obtenerEdadMenor18(); break; case '18 a 24 años': $cantidad = $graficos->obtenerEdad1824(); break; case '25 a 34 años': $cantidad = $graficos->obtenerEdad2434(); break; case '35 a 44 años': $cantidad = $graficos->obtenerEdad3544(); break; case '45 a 54 años': $cantidad = $graficos->obtenerEdad4554(); break; case '55 a 64 años': $cantidad = $graficos->obtenerEdad5564(); break; case '65 años o más': $cantidad = $graficos->obtenerEdad65oMas(); break; case 'Estados': $cantidad = $graficos->obtenerEstados(); echo json_encode($cantidad); // Devolver directamente el array de estados exit; // Terminar la ejecucion aqui case 'Examenes': $cantidad = $graficos->obtenerExamenes(); echo json_encode($cantidad); // Devolver directamente el array de examenes exit; // Terminar la ejecucion aqui default: $cantidad = 0; } echo json_encode(['cantidad' => $cantidad]); } class Graficos{ private $conexion; protected $db; public function __construct() { $this->conexion = new Conexion(); $this->db = $this->conexion->conectar(); } public function obtenerGeneroFemenino() { $query = $this->db->prepare("SELECT COUNT(*) AS Femenino FROM candidato WHERE id_genero = 2 "); $query->execute(); $resultado = $query->get_result(); $output = "0"; if($resultado->num_rows > 0) { while ($data = $resultado->fetch_assoc()) { $output= $data['Femenino']; } } $query->close(); $this->db->close(); return $output; } public function obtenerGeneroMasculino() { $query = $this->db->prepare("SELECT COUNT(*) AS Maculino FROM candidato WHERE id_genero = 1 "); $query->execute(); $resultado = $query->get_result(); $output = "0"; if($resultado->num_rows > 0) { while ($data = $resultado->fetch_assoc()) { $output= $data['Maculino']; } } $query->close(); $this->db->close(); return $output; } public function obtenerGeneroNoDefinido() { $query = $this->db->prepare("SELECT COUNT(*) AS NoDefinido FROM candidato WHERE id_genero = 3 "); $query->execute(); $resultado = $query->get_result(); $output = "0"; if($resultado->num_rows > 0) { while ($data = $resultado->fetch_assoc()) { $output= $data['NoDefinido']; } } $query->close(); $this->db->close(); return $output; } public function obtenerEdadMenor18() { $query = $this->db->prepare("SELECT COUNT(*) AS menorEdad FROM candidato WHERE id_rango_edad = 1"); $query->execute(); $resultado = $query->get_result(); $output = "0"; if($resultado->num_rows > 0) { while ($data = $resultado->fetch_assoc()) { $output= $data['menorEdad']; } } $query->close(); $this->db->close(); return $output; } public function obtenerEdad1824() { $query = $this->db->prepare("SELECT COUNT(*) AS edad1824 FROM candidato WHERE id_rango_edad = 2"); $query->execute(); $resultado = $query->get_result(); $output = "0"; if($resultado->num_rows > 0) { while ($data = $resultado->fetch_assoc()) { $output= $data['edad1824']; } } $query->close(); $this->db->close(); return $output; } public function obtenerEdad2434() { $query = $this->db->prepare("SELECT COUNT(*) AS edad2434 FROM candidato WHERE id_rango_edad = 3"); $query->execute(); $resultado = $query->get_result(); $output = "0"; if($resultado->num_rows > 0) { while ($data = $resultado->fetch_assoc()) { $output= $data['edad2434']; } } $query->close(); $this->db->close(); return $output; } public function obtenerEdad3544() { $query = $this->db->prepare("SELECT COUNT(*) AS edad3544 FROM candidato WHERE id_rango_edad = 4"); $query->execute(); $resultado = $query->get_result(); $output = "0"; if($resultado->num_rows > 0) { while ($data = $resultado->fetch_assoc()) { $output= $data['edad3544']; } } $query->close(); $this->db->close(); return $output; } public function obtenerEdad4554() { $query = $this->db->prepare("SELECT COUNT(*) AS edad4554 FROM candidato WHERE id_rango_edad = 5"); $query->execute(); $resultado = $query->get_result(); $output = "0"; if($resultado->num_rows > 0) { while ($data = $resultado->fetch_assoc()) { $output= $data['edad4554']; } } $query->close(); $this->db->close(); return $output; } public function obtenerEdad5564() { $query = $this->db->prepare("SELECT COUNT(*) AS edad5564 FROM candidato WHERE id_rango_edad = 6"); $query->execute(); $resultado = $query->get_result(); $output = "0"; if($resultado->num_rows > 0) { while ($data = $resultado->fetch_assoc()) { $output= $data['edad5564']; } } $query->close(); $this->db->close(); return $output; } public function obtenerEdad65oMas() { $query = $this->db->prepare("SELECT COUNT(*) AS edad65oMas FROM candidato WHERE id_rango_edad = 7"); $query->execute(); $resultado = $query->get_result(); $output = "0"; if($resultado->num_rows > 0) { while ($data = $resultado->fetch_assoc()) { $output= $data['edad65oMas']; } } $query->close(); $this->db->close(); return $output; } public function obtenerEstados() { try { $query = $this->db->prepare(" SELECT estados.nombre AS estado, COUNT(*) AS cantidad FROM estados INNER JOIN info_candidatos ON info_candidatos.id_estado = estados.id GROUP BY estados.nombre ORDER BY estados.nombre "); $query->execute(); $resultado = $query->get_result(); $estados = []; while ($data = $resultado->fetch_assoc()) { $estados[] = $data; } $query->close(); error_log(json_encode($estados)); return $estados; } catch (Exception $e) { error_log("Error al obtener los estados: " . $e->getMessage()); return []; } } public function obtenerExamenes() { try { $query = $this->db->prepare("SELECT nombre_examen AS examen , COUNT(*) AS cantidad FROM examen INNER JOIN candidato ON candidato.id_examen = examen.id_examen GROUP BY nombre_examen ORDER BY nombre_examen; "); $query->execute(); $resultado = $query->get_result(); $examenes = []; while ($data = $resultado->fetch_assoc()) { $examenes[] = $data; } $query->close(); error_log(json_encode($examenes)); return $examenes; } catch (Exception $e) { error_log("Error al obtener los examenes: " . $e->getMessage()); return []; } } } ?>