Ver Mensaje Individual
  #4 (permalink)  
Antiguo 01/07/2004, 06:51
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Puedes usar perfectamente una sesión (o cookie) para propagar esas variables (sus valores) de tus formularios que vas "recolectando" en tus N formulario (= páginas).

Piensa en una "sesión" como un lugar temporal donde almacenas tus variables y su valor correspondiente para que puedas ir "acomulando" variables en el o bien modificar y borrar el valor o dato concreto de ella.

El objetivo es ir guardando en cada proceso de tu formulario esas variables en una sesión y al final del último formulario será donde leas esas N variables (pueden ir bajo un array para recorrerlo mejor ...) y realizar tu proceso final con todas esas variables. Por el camino (entre tus N formularios) puedes ir validando esas variables si corresponde ademas de verificar bajo la misma filosofía si está siguiendo la secuencia de páginas de tu test o está intentado "saltarse" (entrando directo por el URL) a cierta página de tu test cuando la lógica dice que se ha de seguir tal secuencia concreta.

La secuencia básica sería algo tipo:

formulario1.php
Código PHP:
<form action="procesa1.php" method="post">
<
input type="text" name="variable1_form1">
<
boton submit>
</
form
procesa1.php
Código PHP:
<?
// inicio uso sesiones
session_start();
// Registrar las variables en la sesión.
$_SESSION['variable1_form1']=$_POST['variable1_form1'];
// Redirecciono al siguiente formulario ...
header ("Location: formulario2.php");
?>]
formulario2.php
Código PHP:
<form action="procesa2.php" method="post">
<
input type="text" name="variable1_form2">
<
input type="text" name="variable2_form2">
<
boton submit>
</
form
procesa2.php
Código PHP:
<?
// inicio uso sesiones
session_start();
// Registrar las variables en la sesión
$_SESSION['variable1_form2']=$_POST['variable1_form2'];
$_SESSION['variable2_form2']=$_POST['variable2_form2'];
// Redirecciono al siguiente formulario ...
header ("Location: formulario3.php");
?>]
Y el último "procesaN.php" podrás leer las variables de la sesión y usarlas para tu fin:

Código PHP:
<?
echo $_SESSION['variable1_form1'];
echo 
$_SESSION['variable1_form2'];
echo 
$_SESSION['variable2_form2'];
?>
Como veras .. lo ideal para este caso es usar un array el cual iras añadiendo elementos a ella y despues lo guardas en tu sesión bajo un nombre (así trabaja por ejemplo un carrito de compras .. es la misma filosofía).

Luego tendrías que empezar a validar tus variables y la existencia de estas para ver si están siguiendo la secuencia correcta de formularios tan sólo viendo si en el script "Par" de proceso están creadas las variables de sesión que creastes en el anterior (podrías usar una variable extra tipo "control" donde guardas el nº de formulario que se está ejecutó: 1,2,3,4 para verificar la secuencia correcta).

Un saludo,

Última edición por Cluster; 09/07/2004 a las 07:36