Ver Mensaje Individual
  #6 (permalink)  
Antiguo 09/08/2007, 19:42
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: botón atrás

Por lo que voy entendiendo, lo que tenés es un solo script php que contiene lo que luego se convierten en varias páginas, cada una de ellas es un paso de un sistema de formularios.

Si es eso,
1.- Mala idea ponerlo así. Es mucho más claro ponerlo en páginas separadas. Tendrás menos problemas y código más claro.

2.- usá variables que identifiquen claramente en qué paso estás (preferentemente variables GET). Así, pase lo que pase, solo se hace el procesamiento correspondiente a ese paso. Y podrás navegar con comodidad entre los formularios.

3.- Relacionado con 1: una buena forma de procesar series de formularios es:
si tengo la página A con un formulario cuyos datos deben ser recogidos por B, mejor es hacer que el fomulario en A se envíe hacia la misma A, se procese como corresponda, y después se redirija a B. Con este método, cada página tiene un control total sobre sus datos, y una actualización por parte del usuario de la página B no causa que el formulario se envíe de nuevo.

4.- No confíes en que un history.back() te va a conservar los datos que estaban escritos en el formulario. Esta conducta es poco predecible, por desgracia (si fuera algo que todos los navegadores hicieran, nos haría la vida más fácil a los programadores).

Perdón por sugerir una reescritura del sistema, pero realmente es complicado ver dónde empieza el HTML y dónde el PHP, y aún más complicado es entender el flujo del sistema.

Un último comentario: la próxima vez que pegues código, usá las etiquetas BBCode [ php] y [/php], para que esto:

$hola = "soy una variable";

se transforme en esto:

Código PHP:
$hola "soy una variable"
que es bastante más legible como código.

Saludos.