Reportes excel con php

Hola y saludos otra vez ya te había preguntado esto, solo que no me a salido trato de mostrar mi consulta en pantalla y de allí dar clic en un botón para que me haga un reporte en excel pero que me mande solo esos datos que están en pantalla y a mi me manda todos los de la tabla de mi base de datos, hago esto para para mandar a excel:
<?php
$Reporte= $_REQUEST['Reporte'];
if (isset($Reporte))
{
    header("Content-Type: application/force-download");
    header("Content-Disposition: attachment; filename=miarchivo.xls");
    header("Content-Transfer-Encoding: binary");
    header("Cache-Control: private");    
    echo $tabla;
}
?>
En el echo esto metiendo los datos de mi tabla para que los amnde a excel al momento de presionar el botón de reporte y aquí esta mi consulta:
if(isset($_POST["textfield2"]) && isset($_POST["textfield22"])){
//hace la consulta como está ahora
$consulta = mysql_query("SELECT * FROM perfil_prueba WHERE CARRERA_EGRESO LIKE '%$CARRERA_EGRESO%' and ESPECIALIDAD LIKE '%$ESPECIALIDAD%' and SEMESTRE_EGRESO LIKE '%$SEMESTRE%' and ANO_EGRESO >= $ANO_EGRESO_INI and ANO_EGRESO <= $ANO_EGRESO_FIN and TITULADO LIKE '%$TITULADO%'", $enlace);
}
else{
$consulta = mysql_query("SELECT * FROM perfil_prueba WHERE CARRERA_EGRESO LIKE '%$CARRERA_EGRESO%' and ESPECIALIDAD LIKE '%$ESPECIALIDAD%' and SEMESTRE_EGRESO LIKE '%$SEMESTRE%'  and TITULADO LIKE '%$TITULADO%'",$enlace);
}
while($row = mysql_fetch_array($consulta))
//$row= mysql_fetch_array($consulta) or die( "Error en query: $consulta, el error  es: " . Mysql_error() );
//while($row)
{
$NUMERO_CONTROL= $row["NUMERO_CONTROL"];
$APELLIDO_PATERNO= $row["APELLIDO_PATERNO"];
$APELLIDO_MATERNO= $row["APELLIDO_MATERNO"];
$NOMBRE_S= $row["NOMBRE_S"];
$CARRERA_EGRESO= $row["CARRERA_EGRESO"];
$ESPECIALIDAD= $row["ESPECIALIDAD"];
$SEMESTRE_EGRESO= $row["SEMESTRE_EGRESO"];
$ANO_EGRESO_INI= $row["ANO_EGRESO"];
$ANO_EGRESO_FIN= $row["ANO_EGRESO"];
$TITULADO= $row["TITULADO"];
$tabla.="
<table width='100%' border='7' cellspacing='1' callpadding='1'>
\n";
$tabla.="
<tr>
\n";
$tabla.="
<td width='10%'>$NUMERO_CONTROL</a></td>
\n";
$tabla.="
<td width='15%'>$APELLIDO_PATERNO</a></td>
\n";
$tabla.="
<td width='15%'>$APELLIDO_MATERNO</a></td>
\n";
$tabla.="
<td width='20%'>$NOMBRE_S</a></td>
\n";
$tabla.="
<td width='30%'>$CARRERA_EGRESO</a></td>
\n";
$tabla.="
<td width='30%'>$ESPECIALIDAD</a></td>
\n";
$tabla.="
<td width='20%'>$SEMESTRE_EGRESO</a></td>
\n";
$tabla.="
<td width='8%'>$ANO_EGRESO</a></td>
\n";
$tabla.="
<td width='5%'>$TITULADO</a></td>
\n";
$tabla.="
</tr>
\n";
$tabla.="
</table>
\n";
$tabla.="
<hr size = 2color =ffffff width = 100% align = left>
";
}
?>
<form action="buscasemestre.php" method="post">
<input type=submit name="Reporte" value="Reporte">
</form>
A la variable $tabla le asigno el valor de cada uno de los datos el problema es que si busco no me manda nada no muestra nada en pantalla por lo mismo creo yo que no le pongo el echo y si le doy reporte pues en excel no me manda nada igual que en pantalla pero si debería mandarme datos en la pantalla y no muestra nada, si pongo echo antes de la variable $tabla me manda muchas veces los datos pero si le doy clic en el botón reporte si me manda los datos tal cual esta en pantalla pero esta mal la consulta como le hago para acomodar todo esto espero me puedas ayudar
Saludos

1 Respuesta

Respuesta
1
Lo que primero debes de hacer es comprobar el resultado que te sale del a consulta, a ver si es el que esperas, para ello, haz un:
echo $consulta
Y ejecuta la consulta en el Mysql.
Cuando veas si los resultados son adecuados, y después de asignárselo a $tabla, muestrala por pantalla. Ante un problema confuso, empieza a solucionar los pequeños detalles, ten en cuenta que desconozco la estructura de tu BD, etc...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas