Estoy haciendo un script en Perl cuya función es generar reportes de acuerdo a una serie de opciones.
Esas opciones incluyen popus, radios, checkbox y campos de texto. Cuando yo doy clic en el botón Generar Reporte, todo va bien: los parámetros pasan ocultos y pongo una ventana en pantalla la cual le indica al usuario que el reporte se está generando. Hasta ahí va todo bien. El problema radica que donde le indico al usuario que el reporte se está generando, hago un refresh para que me redireccione al programa correcto de acuerdo a las opciones que el usuario seleccionó.
Ya cuando me enlaza al programa correcto me aparecen los parámetros en la barra del explorador. Intenté pasarlos con un hidden pero no lo hace. Aquí pongo la rutina que estoy utilizando.
Using perl Syntax Highlighting
if ($FORM{modo_reporte} == 1) {
$redirecciona="rep_programacpartida.cgi?$url_param&tipo_prog=$FORM{tipo_prog}$gerencias$programas$tipo_consolidado&tipo_reporte=$FORM{tipo_reporte}&delapart=$FORM{delapart}&alapart=$FORM{alapart}&delmes=$FORM{delmes}&almes=$FORM{almes}&anioconsulta=$FORM{anioconsulta}"
} elsif ($FORM{modo_reporte} == 2) {
$redirecciona="rep_programa.cgi?$url_param&tipo_prog=$FORM{tipo_prog}$gerencias$programas$tipo_consolidado&tipo_reporte=$FORM{tipo_reporte}&delmes=$FORM{delmes}&almes=$FORM{almes}&anioconsulta=$FORM{anioconsulta}"
} elsif ($FORM{modo_reporte} == 3) {
$redirecciona="rep_partida.cgi?$url_param&tipo_prog=$FORM{tipo_prog}$gerencias$programas$tipo_consolidado&tipo_reporte=$FORM{tipo_reporte}&delapart=$FORM{delapart}&alapart=$FO
RM{alapart}&delmes=$FORM{delmes}&almes=$FORM{almes}&anioconsulta=$FORM{anioconsulta}"
} elsif ($FORM{modo_reporte} == 4) {
$redirecciona="rep_capitulo.cgi?$url_param&tipo_prog=$FORM{tipo_prog}$gerencias$programas$tipo_consolidado&tipo_reporte=$FORM{tipo_reporte}&delapart=$FORM{delapart}&alapart=$FORM{alapart}&delmes=$FORM{delmes}&almes=$FORM{almes}&anioconsulta=$FORM{anioconsulta}"
} else { # aqui entran los historicos
}
$table0=new HTML::Table(-rows=>3,-cols=>1,-width=>"50%",-spacing=>0,-padding=>0,-border=>1,-bgcolor=>"#f6f6f6",-style=>"border-collapse:collapse;");
$table0->setCell(1,1,"<font size=4 color=\"white\"><b>$msj_titulo</b></font>");
$table0->setCell(2,1, "<br> $msj_cuerpo <br> <br> <img src=\"$server/images/firco/carpetas.gif\"</img> <br> <img src=\"$server/images/firco/barrracolor.gif\"</img>");
$table0->setCell(3,1, "<meta HTTP-EQUIV=\"refresh\" content=\"0; URL=$redirecciona\"");
$table0->setCellAlign(1,1,"LEFT");
$table0->setCellBGColor(1,1,"#003366");
$table0->setCellAlign(2,1,"CENTER");
$table0->setCellAlign(3,1,"CENTER");
$table0->setCellNoWrap(1,2,"0");
print print header(-expires=>'now');
&print_cabeza(); # esta funcion se encuentra en el (pm)
print '<center>';
$table0->print;
print '</center>';
print end_html();
$redirecciona="rep_programacpartida.cgi?$url_param&tipo_prog=$FORM{tipo_prog}$gerencias$programas$tipo_consolidado&tipo_reporte=$FORM{tipo_reporte}&delapart=$FORM{delapart}&alapart=$FORM{alapart}&delmes=$FORM{delmes}&almes=$FORM{almes}&anioconsulta=$FORM{anioconsulta}"
} elsif ($FORM{modo_reporte} == 2) {
$redirecciona="rep_programa.cgi?$url_param&tipo_prog=$FORM{tipo_prog}$gerencias$programas$tipo_consolidado&tipo_reporte=$FORM{tipo_reporte}&delmes=$FORM{delmes}&almes=$FORM{almes}&anioconsulta=$FORM{anioconsulta}"
} elsif ($FORM{modo_reporte} == 3) {
$redirecciona="rep_partida.cgi?$url_param&tipo_prog=$FORM{tipo_prog}$gerencias$programas$tipo_consolidado&tipo_reporte=$FORM{tipo_reporte}&delapart=$FORM{delapart}&alapart=$FO
RM{alapart}&delmes=$FORM{delmes}&almes=$FORM{almes}&anioconsulta=$FORM{anioconsulta}"
} elsif ($FORM{modo_reporte} == 4) {
$redirecciona="rep_capitulo.cgi?$url_param&tipo_prog=$FORM{tipo_prog}$gerencias$programas$tipo_consolidado&tipo_reporte=$FORM{tipo_reporte}&delapart=$FORM{delapart}&alapart=$FORM{alapart}&delmes=$FORM{delmes}&almes=$FORM{almes}&anioconsulta=$FORM{anioconsulta}"
} else { # aqui entran los historicos
}
$table0=new HTML::Table(-rows=>3,-cols=>1,-width=>"50%",-spacing=>0,-padding=>0,-border=>1,-bgcolor=>"#f6f6f6",-style=>"border-collapse:collapse;");
$table0->setCell(1,1,"<font size=4 color=\"white\"><b>$msj_titulo</b></font>");
$table0->setCell(2,1, "<br> $msj_cuerpo <br> <br> <img src=\"$server/images/firco/carpetas.gif\"</img> <br> <img src=\"$server/images/firco/barrracolor.gif\"</img>");
$table0->setCell(3,1, "<meta HTTP-EQUIV=\"refresh\" content=\"0; URL=$redirecciona\"");
$table0->setCellAlign(1,1,"LEFT");
$table0->setCellBGColor(1,1,"#003366");
$table0->setCellAlign(2,1,"CENTER");
$table0->setCellAlign(3,1,"CENTER");
$table0->setCellNoWrap(1,2,"0");
print print header(-expires=>'now');
&print_cabeza(); # esta funcion se encuentra en el (pm)
print '<center>';
$table0->print;
print '</center>';
print end_html();
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4
Esa es la rutina, que le indica al usuario que el reporte se está generando y la que hace el refresh, lo que no he podido hacer es que me redireccione al programa sin que me ponga los parámetros en la barra de direcciones, pero que los pase al programa donde se está enlazando.
Espero y me puedan ayudar o dar una idea de cómo hacerle.