Tema: FAQ's de PHP
Ver Mensaje Individual
  #58 (permalink)  
Antiguo 10/04/2003, 10:50
Avatar de urjose
urjose
 
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 22 años, 10 meses
Puntos: 1
Tema: Formularios

Pregunta: ¿Como paso valores entre varios formularios?

Respuesta:

Notas importantes: Usar array Super globales y el atributo method de la etiqueta form debe ser "post" aunque si cambiamos $_GET y el atributo "get" en la etiqueta form tabien debe funcionar.

Veamos un ejemplo:

Formulario1:


Código PHP:
         <form name="formEmpresa" method="post" action="registro3.php">        
        <
table width="60%" border="0" align="center" cellpadding="0" cellspacing="0">
          <
tr
            <
td width="32%"><font size="2" face="Arial, Helvetica, sans-serif">Puesto:</font></td>
            <
td width="68%"><font size="2" face="Arial, Helvetica, sans-serif"
              <
input name="puesto" type="text" id="puesto" size="40" maxlength="40">
              </
font></td>
          </
tr>
          <
tr>
            <
td><font size="2" face="Arial, Helvetica, sans-serif">Email oficina:</font></td>
            <
td><font size="2" face="Arial, Helvetica, sans-serif">
              <
input name="emailOficina" type="text" id="fax" size="40" maxlength="60">
              </
font></td>
          </
tr>
        </
table>
            <
p align="center">
              <
input name="continuarEmpresa" type="submit" id="registrar" value="Continuar">
            </
p>
        </
form

2do formulario:

Código PHP:
         <form name="formEmpresa" method="post" action="registro4.php">
        <?
            
foreach( $_POST as $key => $value ) {
                echo 
"<input type='hidden' name='".$key."' value='".$value."'>";
            }
        
?>
        <table width="60%" border="0" align="center" cellpadding="0" cellspacing="0">
          <tr> 
            <td width="34%"><font size="2" face="Arial, Helvetica, sans-serif">Productos 
              que ofreces:</font></td>
            <td width="66%"><font size="2" face="Arial, Helvetica, sans-serif"> 
              <input type="text" name="nombre">
              </font></td>
          </tr>

        </table>
        <p align="center">
              <input name="continuarEmpresa" type="submit" id="registrar" value="Continuar">
            </p>
        </form>

Con lo anterior se iran creando campos hidden con todos los valores pasados del formulario 1 al 2. Y por ultimo en la ultima envio podemos recoger todos los valores con un simple $_POST["nombreCampo"]

Bueno es algo sencillo pero util, acabo de hacer esto para un portal y funciona muy bien

Saludos

Última edición por urjose; 10/04/2003 a las 12:30