Foros del Web » Programando para Internet » PHP »

Variables y sesiones..

Estas en el tema de Variables y sesiones.. en el foro de PHP en Foros del Web. Hola, necesito que un archivo php procese un form y guarde la variable y que después desde ese mismo archivo vuelva a procesar otro form ...
  #1 (permalink)  
Antiguo 24/02/2009, 16:37
Avatar de Wilfred  
Fecha de Ingreso: octubre-2008
Mensajes: 110
Antigüedad: 15 años, 6 meses
Puntos: 1
Variables y sesiones..

Hola,
necesito que un archivo php procese un form y guarde la variable y que después desde ese mismo archivo vuelva a procesar otro form y que no se pierde el valor de la variables de antes.me explico?

hice este script para comprobar el funcionamiento de SESSIONS;
Código php:
Ver original
  1. <?php
  2. ?>
  3. <form name="prueba" method="POST">
  4. <input type="text" name="var1" value="" />
  5. <input type="submit" value="ok" />
  6. </form>
  7. <form name="prueba2" method="POST">
  8. <input type="text" name="var2" value="" />
  9. <input type="submit" value="ok" />
  10. </form>
  11.  
  12. <?php
  13.  
  14. $var1=$_POST['var1'];
  15. $var2=$_POST['var2'];
  16.  
  17. $_SESSION["var1"] = $var1;
  18. $_SESSION["var2"] = $var2;
  19.  
  20. echo $_SESSION["var1"];
  21. echo $_SESSION["var2"];
  22.  
  23.     ?>

cuando envío el form 1 me imprime el valor,vale hasta ahí bien,pero el problema es que al enviar el segundo se me pierde el valor del primero y solo me muestra el segundo :S .
  #2 (permalink)  
Antiguo 24/02/2009, 16:42
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Variables y sesiones..

es que siempre "crees" que hay POST.... osea, indiscriminadamente estas usando el valor de $_POST

y por logica, envias el form 2.... y sobre escribes la variable de sesion var1 con un POST inexistente....

esta muy mal tu logica, debes aprender a hacerlo mejor...

suerte!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 24/02/2009, 16:44
Avatar de david_M_G  
Fecha de Ingreso: febrero-2005
Mensajes: 938
Antigüedad: 19 años, 2 meses
Puntos: 20
Respuesta: Variables y sesiones..

Eso es porque cuando envias el segundo estás volviendo a asignar var1, y en este caso (en el segundo formulario) $_POST['var1'] está vacía, por lo que queda finalmente vacía.

Haz estos cambios:



<form name="prueba" method="POST">
<input type="text" name="var1" value="" />
<input type="submit" name="enviar1" value="ok" />
</form>
<form name="prueba2" method="POST">
<input type="text" name="var2" value="" />
<input type="submit" name="enviar2" value="ok" />
</form>

Código PHP:
Ver original
  1. if ($_POST['enviar1'])
  2. {
  3. $_SESSION["var1"] = $_POST['var1'];
  4. }
  5.  
  6. if ($_POST['enviar2'])
  7. {
  8. $_SESSION["var2"] = $_POST['var2'];
  9. }
  #4 (permalink)  
Antiguo 25/02/2009, 05:38
Avatar de Wilfred  
Fecha de Ingreso: octubre-2008
Mensajes: 110
Antigüedad: 15 años, 6 meses
Puntos: 1
Respuesta: Variables y sesiones..

Muchas gracias David,me funcionó bien,gracias por la explicación.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:09.