Foros del Web » Programando para Internet » PHP »

¿Como puedo "mantener" los datos ingresados en un formulario?

Estas en el tema de ¿Como puedo "mantener" los datos ingresados en un formulario? en el foro de PHP en Foros del Web. Hola gente, Como dice la pregunta. Necesito mantener los datos que el usuario ingresa en un formulario, ya que estos son enviados a una siguiente ...
  #1 (permalink)  
Antiguo 21/02/2007, 14:29
Avatar de BooMeranGz  
Fecha de Ingreso: febrero-2001
Mensajes: 350
Antigüedad: 23 años, 2 meses
Puntos: 0
Pregunta ¿Como puedo "mantener" los datos ingresados en un formulario?

Hola gente,

Como dice la pregunta.

Necesito mantener los datos que el usuario ingresa en un formulario, ya que estos son enviados a una siguiente página para que el mismo verifique si estan todos correctos y de no ser asi, regresar a la pagina inicial del formulario.

Es alli donde necesito mantener los datos ingresados, de lo contrario no tiene sentido mostrarle los datos al usuario para que pueda modificarlos antes de enviarlos (porque tiene que ingresarlos todos nuevamente).

Se que lo podría hacer con sesiones y/o cookies, pero no las se usar.

Este es basicamente (sin el codigo html ni php) el form:

Código HTML:
<form action='see-data.php' method='post' name='formulario' target='_self' id='formulario'>
 <input name='nombre' type='text' id='nombre' size="25" maxlength="35">
 <input name='apellido' type='text' id='apellido' size="25" maxlength="35">
 <input name='email' type='text' id='email' size="20" maxlength="30">
 <input name='emailv' type='text' id='emailv' size="20" maxlength="30">
 <input name='tel' type='text' id='tel' size="15" maxlength="20">
 <input name='telcel' type='text' id='telcel' size="15" maxlength="20">
 <input name='selemail' type='checkbox' id='selemail' value="email" checked>
 <input name='seltel' type='checkbox' id='seltel' value="telefono">
 <input name="radiobutton" type="radio" value="inm" id="radiobutton" checked>
 <input name="radiobutton" type="radio" value="7" id="radiobutton">
 <input name="radiobutton" type="radio" value="30" id="radiobutton">
 <input name="radiobutton" type="radio" value="60" id="radiobutton">
 <input name="radiobutton" type="radio" value="nose" id="radiobutton">
 <textarea name='infosolicitada' cols='55' rows='6' id='infosolicitada'></textarea>
 <input type='submit' value='Enviar'>
 <input type='reset' value='Borrar'>
</form> 
Si me pueden dar una ayuda sobre esto me vendrá muy bien y si hay otra manera de mantener los datos que no sea con sesiones/cookies, también.

Gracias de antemano por la ayuda.
  #2 (permalink)  
Antiguo 21/02/2007, 14:38
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: ¿Como puedo "mantener" los datos ingresados en un formulario?

Como tú mismo lo dices, debes (mejor, dicho puedes) usar sesiones...

En la página que procesará el formulario (see-data.php) colocarás esto:

Código PHP:
//Debes haber iniciado una sesión
//session_start();
$_SESSION['buffer_formulario'] = $_POST
Eso te creará un array al cual podras acceder asi: $_SESSION['buffer_formulario']['nombre del campo']...

Un saludo,
  #3 (permalink)  
Antiguo 21/02/2007, 14:43
 
Fecha de Ingreso: enero-2006
Ubicación: Madrid
Mensajes: 74
Antigüedad: 18 años, 3 meses
Puntos: 2
Re: ¿Como puedo "mantener" los datos ingresados en un formulario?

sería bastante sencillo de realizar si haces que sea la misma página la que valide los campos de formulario en vez de pasárselos a see-data.php. Si lo único que hace see-data.php es comprobar que los datos estén correctos, se puede hacer sin ningún problema en la misma página... tienes un formulario que hace eso en http: / / iulius.ifastnet.com/www/contacto.php ¿es ese el funcionamiento que desearías????
  #4 (permalink)  
Antiguo 21/02/2007, 14:45
Avatar de Carxl
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: Bogotá
Mensajes: 2.993
Antigüedad: 17 años, 9 meses
Puntos: 70
De acuerdo Re: ¿Como puedo "mantener" los datos ingresados en un formulario?

Pues en la opcion value de cualquier objeto del html colocas, por ejemplo:

<input name="nombre" type="text" id="nombre" size="25" maxlength="35" value="<?php echo $_SESSION['nombre'];>">.

Donde $_SESSION['nombre'], lo coges de tu pagina de error. Es decir, igualas lo que venìa del fomulario a la variable de sesion y lo muestras en tuformulario como te acabo de mostrar.

Espero te sirva.

Saludos
__________________
Hay 10 tipos de personas, los que entienden binario y los que no. (Anónimo)
www.programandoweb.com
  #5 (permalink)  
Antiguo 21/02/2007, 14:57
Avatar de BooMeranGz  
Fecha de Ingreso: febrero-2001
Mensajes: 350
Antigüedad: 23 años, 2 meses
Puntos: 0
Re: ¿Como puedo "mantener" los datos ingresados en un formulario?

okram,
Gracias por la ayuda.
¿Podrias ponerme un ejemplo mas acorde a mi formulario?, no se donde ni como iniciar esa session, tampoco se cuando y como hay que destruirla. Gracias amigo.

iulius,
Gracias por este aporte, en ste caso me piden que el proceso siga estos pasos que he citado.
Pero mi interesa mucho ver el codigo completo de tu formulario para futuras aplicaciones, si lo puedes postear (o enviarmelo por mail) te agradeceré enormemente.

Carxl,
Gracias por tu parte, aunque sin un ejemplo concreto realmente no la se aplicar...

Gracias a todos, espero sus comentarios.

Salu2.
  #6 (permalink)  
Antiguo 21/02/2007, 15:10
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: ¿Como puedo "mantener" los datos ingresados en un formulario?

Bien, lee algo acerca de sesiones:
http://www.php.net/manual/es/ref.session.php

En see-data.php:

Código PHP:
//Inicias una sesion
session_name('nombre_de_tu_sesion');
session_start();
 
//Guardas los datos del formulario (que llega por $_POST) en una variable de sesion:
$_SESSION['form_buffer'] = $_POST;
 
//Haces lo que vayas a hacer con los datos, mostrarlos, no se
 
//........
 
//SI no paso la validacion:
header('Location: formulario.php'); //Ubicacion de tu formulario 
Luego, en formulario.php (pagina del formulario) iniciarás asi:

Código PHP:
//<?php
//Inicias la sesion
session_name('nombre_de_tu_sesion');
session_start();
 
//Recuperas los valores del formulario:
$datos $_SESSION['form_buffer'];
 
//Borras la sesion, mejor dicho, la variable de sesion que creaste
unset($_SESSION['form_buffer']);
 
//CODIGO DEL FORMULARIO
?>
<form action='see-data.php' method='post' name='formulario' target='_self' id='formulario'>
 <input name='nombre' type='text' id='nombre' size="25" maxlength="35" value="<?=$datos['nombre'];?>">
 <input name='apellido' type='text' id='apellido' size="25" maxlength="35" value="<?=$datos['apellido'];?>">
 <input name='email' type='text' id='email' size="20" maxlength="30" value="<?=$datos['email'];?>">
 <input name='emailv' type='text' id='emailv' size="20" maxlength="30" value="<?=$datos['emailv'];?>">etc etc...............
</form>
</DIV>

Cualquier duda, sigue posteando.

Un saludo,
  #7 (permalink)  
Antiguo 21/02/2007, 17:27
Avatar de BooMeranGz  
Fecha de Ingreso: febrero-2001
Mensajes: 350
Antigüedad: 23 años, 2 meses
Puntos: 0
Re: ¿Como puedo "mantener" los datos ingresados en un formulario?

Gracias okram, ya lo he implementado y ¡funciona perfecto!

Me salvaste nuevamente con este tema, en cuanto tenga un buen rato me pondré a estudiar bien php, no puede ser que cada vez que necesite algo tenga que venir corriendo aqui para que me tiren un salvavidas

Salu2 y gracias nuevamente.
  #8 (permalink)  
Antiguo 16/11/2007, 20:09
Avatar de kesioo  
Fecha de Ingreso: enero-2007
Ubicación: Capital Federal, Argentina
Mensajes: 137
Antigüedad: 17 años, 3 meses
Puntos: 2
Re: ¿Como puedo "mantener" los datos ingresados en un formulario?

Buenas! a ver si me orientan...

tengo un formulario de registro, el cual debe tener 3 secciones: Datos, Servicios, Fotografias. Es decir, completados los datos, dar ok para pasar a la siguiente seccion y asi...

Lo que no se es como hacer para que valide los datos, y si esta todo bien, que siga a servicios, y luego a fotografia.

Deberia ir validando todo seguramente a cada paso... ahora, si todo esta correcto debo enviarlo en conjunto a la base de datos?
deberia usar lo que dicen de crear una sesion?
en el sitio no habra ingreso con usuario y contraseña. Tan solo registran esos datos y si estan bien, apareceran en los resultados de las busquedas.

Otra cosa, es conveniente usar solo una pagina, por ej, formulario.php? asi con un If chequeo, si la primera parte esta bien, hago un include del formulario de servicios, y luego del de las fotografias...

por ultimo, para realizar una validacion dentro de la misma pagina y no tener que recurrir a otra, debo utilizar javascript o con php se puede hacer? por ahora venia enviando a la siguiente, validando e insertando en la base,

disculpen la lluvia de interrogantes jeje

saludos!!
  #9 (permalink)  
Antiguo 19/06/2010, 18:01
Avatar de bocho0610  
Fecha de Ingreso: enero-2010
Ubicación: <? echo "Santiago, Chile"; ?>
Mensajes: 341
Antigüedad: 14 años, 4 meses
Puntos: 26
Respuesta: ¿Como puedo "mantener" los datos ingresados en un formulario?

se puede hacer algo parecido pero con checkboxs?

Edito: ups disculpen no habia visto la fecha u.u sorry por subirlo.
__________________
Sigueme en Twitter!
Septimoarte.cl <-- Un mundo en cine.

Última edición por bocho0610; 19/06/2010 a las 18:13
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 22:23.