Mi problema es el siguiente, tengo una consulta a una DB, que me devuelve los datos de una Escuela y los muestro en una página, con la fachada del Colegio y que se yo... Hasta ahí todo bien...
Pero el problema aparece con los Planes de Estudios, Idiomas y Turnos, ya que cada Establecimiento tiene varios, por lo que creé una tabla separada para cada uno de ellos: establecimientos2planes, establecimientos2idiomas y establecimientos2turnos respectivamente.
Tomando como ejemplo establecimientos2planes (las otras 2 son similares) tengo: id_est (que coincide con el ID único del Establecimiento) y id_plan (que coincide con el ID único del Plan) con lo que, en el primer Colegio me quedaría:
id_est | id_plan
1 | 1
1 | 6
1 | 7
1 10
(Porque el Establecimiento 1 tiene 4 Planes de Estudio diferentes)
Entonces el siguiente código, me genera la página de detalles:
Código :
<?php
include("config.php");
$id = $_GET['id'];
$result = mysql_query("SELECT
establecimientos.id,
establecimientos.cue,
establecimientos.de,
establecimientos.tipo,
establecimientos.numero,
establecimientos.nombre,
establecimientos.direccion,
establecimientos.idbarrio,
establecimientos.colectivos,
establecimientos.subtes,
establecimientos.tel1,
establecimientos.tel2,
establecimientos.mail,
establecimientos.especialidad,
establecimientos.p13,
establecimientos.reingreso,
establecimientos.manana,
establecimientos.tarde,
establecimientos.vespertino,
establecimientos.noche,
establecimientos.ingles,
establecimientos.frances,
establecimientos.italiano,
establecimientos.portugues,
establecimientos.idjunta,
establecimientos.cgp,
establecimientos.autoridad,
establecimientos.idsede,
DATE_FORMAT(establecimientos.fecha,'%d') AS dia,
DATE_FORMAT(establecimientos.fecha,'%W') AS diasemana,
DATE_FORMAT(establecimientos.fecha,'%M') AS mesanio,
DATE_FORMAT(establecimientos.fecha,'%Y') AS anio,
DATE_FORMAT(establecimientos.fecha,'%T') AS hora,
tipos.tipo,
barrios.barrio,
planes.plan,
idiomas.idioma,
turnos.turno,
sedes.region,
juntas.junta
FROM
establecimientos
LEFT JOIN tipos ON establecimientos.tipo = tipos.id
LEFT JOIN barrios ON establecimientos.idbarrio = barrios.id
LEFT JOIN establecimientos2planes ON establecimientos.id = establecimientos2planes.id_est
LEFT JOIN planes ON establecimientos2planes.id_plan = planes.id
LEFT JOIN sedes ON establecimientos.idsede = sedes.id
LEFT JOIN establecimientos2idiomas ON establecimientos.id = establecimientos2idiomas.id_est
LEFT JOIN idiomas ON establecimientos2idiomas.id_idioma = idiomas.id
LEFT JOIN establecimientos2turnos ON establecimientos.id = establecimientos2turnos.id_est
LEFT JOIN turnos ON establecimientos2turnos.id_turno = turnos.id
LEFT JOIN juntas ON establecimientos.idjunta = juntas.id
WHERE
establecimientos.id = '$id'",$connect);
while($myrow = mysql_fetch_assoc($result))
{
?>
<?php include('global_variables.php'); ?>
<?php
$tipo = $_GET['tipo'];
echo "<html>
<head>
<title>".$myrow['tipo']." N° $numero DE $de - $nombre</title>
<link href=\"css/dem.css\" rel=\"stylesheet\" type=\"text/css\" media=\"screen\" />
</head>
<body>
<div id=\"contenedor\">
<div id=\"titulo\">
<h1>
".$myrow['tipo']." N° $numero DE $de<br />
"$nombre"
</h1>
</div>
<div id=\"izquierdo\">
<img src=\"imagenes/fachadas/establecimientos/$de/$id.jpg\" title=\"".$myrow['tipo']." N° $numero - $nombre\" alt=\"".$myrow['tipo']." N° $numero - $nombre\" class=\"fachadaimg\" target=\"blank\" />
<h2>Fotografía del Establecimiento</h2>
</div>
<div id=\"derecho\">
<ul>
<li>
<h2 class=\"centrado\">
$direccion - ".$myrow['barrio']."
</h2>
</li>
<li>
<h3>
Teléfono/s:<br />
<div class=\"sangria\">
$tel1 $tel2
</div>
</h3>
<h3>
Mail:<br />
<div class=\"sangria\">
<a href=\"mailto:$mail\">$mail</a>
</div>
</h3>
</li>
<li>
<strong>Transporte:</strong><br />
<div class=\"sangria\">
<strong>Colectivos:</strong> $colectivos<br />
<strong>Subtes:</strong> $subtes
</div>
</li>
<li>
<strong>Código Único de Establecimiento (CUE):</strong><br />
<div class=\"sangria\">
$cue
</div>
</li>
<li>
<strong>Especialidades/Orientaciones:</strong><br />
<div class=\"sangria\">
- ".$myrow['plan']." <strong>".$proyecto13[$p13]."</strong>
</div>
</li>
<li>
<strong>Turnos:</strong><br />
<div class=\"sangria\">
- ".$myrow['turno']."
</div>
</li>
<li>
<strong>Idiomas:</strong><br />
<div class=\"sangria\">
- ".$myrow['idioma']."
</div>
</li>
<li>
<strong>Autoridad:</strong><br />
<div class=\"sangria\">
$autoridad
</div>
</li>
<br />
<br />
<li>
<div class=\"centrado\">
<strong>Sede:</strong> <a href=\"detalles_sede.php?=".$myrow['sedeid']."\">".$myrow['region']."</a> - ".$myrow['junta']." - <strong>CGP:</strong> $cgp
</div>
</li>
</ul>
</div>
<div class=\"alinear_der\"><em>Última Actualización realizada el día ".$dias[$myrow['diasemana']]." ".$myrow['dia']." de ".$mes[$myrow['mesanio']]." de ".$myrow['anio']." - ".$myrow['hora']."</em></div>
<div id=\"limpiar\"><a href=\"javascript:self.history.back();\"><-- Volver al Listado</a></div>
</div>
</body>
</html>";
echo "<br><br>";
}
?>
El problema es, que como cada Escuela tiene varios resultados en Planes, Turnos e Idiomas; la página de detalles no me aparece 1 sola vez, sino que me aparece repetida tantas veces como "planesXidiomasXturnos", o sea que una Escuela con 4 Planes, 4 Idiomas y 4 turnos, me aparece unas 64 veces...
Existe alguna manera de "juntar" todas los resultados de planes en una sola variable (por ej $planes) para poder llamarla desde la plantilla de detalles?
Gracias!!!
