Cita:
Iniciado por CMushroom Bueno te pongo un ejemplo de lo que quieres hacer, ya solo adaptalo a tus datos, toma en cuenta que yo obtengo los datos de mas de tres tablas, por eso hago el join para la consulta ok espero te sirva cualquier duda
Código PHP:
if (isset($_POST["Matricula"]))//comprobar si se han rellenado los campos de el formulario y asignar a variable
{
$Matricula = $_POST["Matricula"];
}
if (isset($_POST["Licenciatura"]))
{
$Licenciatura = $_POST["Licenciatura"];
}
if (isset($_POST["Semestre"]))
{
$Semestre = $_POST["Semestre"];
}
if (isset($_POST["Grupo"]))
{
$Grupo = $_POST["Grupo"];
}
if (isset($_POST["Turno"]))
{
$Turno = $_POST["Turno"];
}
if (isset($_POST["Sexo"]))
{
$Sexo = $_POST["Sexo"];
}
$criterios = "";
if (isset($Matricula)) //armar query bajo criterios
{
$criterios .= "&& alumnos.IdAlumno = ".$Matricula." ";
}
if (isset($Licenciatura))
{
$criterios .= " && alumnos.ClaveLicenciatura = ".$Licenciatura." ";
}
if (isset($Grupo))
{
$criterios .= " && alumnos.IdGrupo = ".$Grupo ." ";
}
if (isset($Semestre))
{
$criterios .= " && alumnos.IdGrupo = ".$Semestre." ";
}
if (isset($Turno))
{
if($Turno==1)$Turno = "Matutino";
if($Turno==2)$Turno = "Vespertino";
$criterios .= " && grupos.TurnoGrupo = '".$Turno."' ";
}
if (isset($Sexo))
{
if($Sexo==1)$Sexo = "Masculino";
if($Sexo==2)$Sexo = "Femenino";
$criterios .= " && alumnos.sexo = '".$Sexo."' ";
}
@$consulta = '
SELECT *
FROM alumnos
INNER JOIN creditos ON alumnos.IdAlumno = creditos.IdAlumno
INNER JOIN licenciaturas ON alumnos.ClaveLicenciatura = licenciaturas.ClaveLicenciatura
INNER JOIN grupos ON alumnos.IdGrupo = grupos.IdGrupo
INNER JOIN cursos ON alumnos.IdAlumno = cursos.IdAlumno
INNER JOIN examen_medca ON alumnos.IdAlumno = examen_medca.IdAlumno
WHERE alumnos.IdAlumno = creditos.IdAlumno && alumnos.IdAlumno = cursos.IdAlumno && alumnos.IdAlumno = examen_medca.IdAlumno '.$criterios.'
';
No se si soy yo o que.. :D pero que os pasa con esos ifs ? en 60 lineas 40 ifs :O
La vulnerabilidad a sql injection no la menciono, por que estoy tratando de comprender por que poneis tantisimos IFs