Comunidad de diseño web y desarrollo en internet online

¿Como podría usar un input que no esté en un form y usar los mi

Citar            
MensajeEscrito el 08 Mar 2012 10:32 pm
Hola a todos.

Tengo un pequeño problema, tengo una página web que usa PHP y MYSQL y cree un formulario para graficar unos datos. Todo funciona bien, pero quisiera crear un archivo excel de una tabla de esos datos, ya cree la página a parte y puedo crear excel, pero el problema es que si actualizo la página en donde están los datos y le doy el link a la página que me envia al que crea el excel los datos no están actualizados.

He buscado y no he encontrado algo que me actualice los datos desde el link, así que decidí hacerlo por medio de una imagen que simula un botón. Y me surgió la duda de si es posible usar un input que esté fuera de un form y usar los datos de ese form.

Mi código es más o menos así:

Código PHP :

<!-- Formulario de seleccion de fechas y tipos -->
      <form id="dates" name="dates" method="post" action="">
         <fieldset>
            <legend>Criterios</legend>
         
         <!-- Capa en donde se encuentran los tipos de gr√°fica -->
         <div id="tipos_grafica">
            
            <strong>Tipo de gr&aacute;fica</strong><br />
            
               <input type="radio" name="tipo_grafica" value="resumen" <?php if($checkbox == "resumen") echo "checked='checked'"; ?> checked="checked" /> Resumen
               
               <input type="radio" name="tipo_grafica" value="mes" <?php if($checkbox == "mes") echo "checked='checked'"; ?>/> Tareas cerradas
               
               <input type="radio" name="tipo_grafica" value="tipo" <?php if($checkbox == "tipo") echo "checked='checked'"; ?>/> Tareas cerradas por tipo
               
               <input type="radio" name="tipo_grafica" value="mes_tipo" <?php if($checkbox == "mes_tipo") echo "checked='checked'"; ?>/> Acumuladas por tipo
         </div><!-- //div tipos de gr√°fica -->
         
         <br />
         <!-- Capa en donde se encuentran los periodos -->
         <div id="seleccion_periodos">
            
            <strong>Periodos</strong><br />
               
               <select id="periodos" name="periodos">
                  <option value="semana" <?php if($periodo == "semana") echo "selected='selected'"; ?> selected="selected" >&Uacute;ltima semana</option>
                  <option value="mes" <?php if($periodo == "mes") echo "selected='selected'"; ?>>&Uacute;ltimo mes</option>
                  <option value="trimestre" <?php if($periodo == "trimestre") echo "selected='selected'"; ?>>&Uacute;ltimo trimestre</option>
                  <option value="semestre" <?php if($periodo == "semestre") echo "selected='selected'"; ?>>&Uacute;ltimo semestre</option>
                  <option value="anio" <?php if($periodo == "anio") echo "selected='selected'"; ?>>&Uacute;ltimo a&ntilde;o</option>
                  <option value="sel_periodos" <?php if($periodo == "sel_periodos") echo "selected='selected'"; ?>>Seleccionar periodo</option>
               </select>
               
         </div> <!-- // div periodos -->
         
         <br />
            
         <!-- Capa de los calendarios -->
         <div id="calendarios" class="hidden">

            <label for="dateOpened">Inicio: </label>
            <input type="text" name="dateOpened" id="dateOpened" value="<?php echo $dateOpened; ?>"/>&nbsp; &nbsp;
            <label for="dateClosed">Final: </label>
            <input type="text" name="dateClosed" id="dateClosed" value="<?php echo $dateClosed; ?>" />
            
         </div><!-- Calendarios -->   
         
         <!-- Boton enviar -->
            <div id="boton"><input type="submit" value="Consultar" /></div>
            
      
         </fieldset>
      </form>



Ahora, eso me genera una tabla de varios datos. Y a parte quiero hacer el excel de esos datos, pero no puedo generalo desde aquí, así que hice una página con el mismo código que me genera la tabla en otra página. Y le hice un link.

Código HTML :

<a href='resumen_todas.php' class='right'><img src='img/excel.png' border='0' alt='Exportar a excel' /></a>


Pero si actualizo la página con nuevos datos, y le doy clic al link la otra página no se actualiza.

¿Hay alguna forma de actualizarla desde el link con los datos que tiene el formulario anterior? ¿Usando PHP, javascript o algo estoy haciendo mal?

Ya he investigado dos días y no puedo encontrar la solución, ojalá me puedan ayudar y espero haberme explicado bien, saludos.

Por Gidrek

Claber

422 de clabLevel

5 tutoriales

Genero:Masculino  

iOS & Python developer

chrome
Citar            
MensajeEscrito el 12 Mar 2012 06:25 pm
Ya lo pude solucionar luego de mucho buscar y hacer experimentos. Fue fácil. Cree dos funciones en javascript y cada función le puse un action diferente

Código Javascript :

function enviar_formulario()
         {
               
            document.dates.action = "excel.php";
            document.dates.submit();
            
            
         }
         
         function enviar_formulario_boton()
         {
            document.dates.action = "";
            document.dates.submit();
         }



Ya luego le puse las funciones en donde va:

Código HTML :

<div id="boton"><input type="submit" value="Consultar" onclick="enviar_formulario_boton()" /></div>


Código HTML :

<a href='javascript:enviar_formulario()' class='right'><img src='img/excel.png' 
                 border='0' alt='Exportar a excel' id='enviar' /></a>


Y listo, ya se puede enviar el formulario en el link y a distinta página

Por Gidrek

Claber

422 de clabLevel

5 tutoriales

Genero:Masculino  

iOS & Python developer

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.