Mantener datos al enviar formulario
¿Has visto alguna vez formularios que al enviar los datos te devuelve un mensaje indicando que te hace falta llenar uno de sus campos? Seguramente, sÃ. Y ¿has visto que existen formularios que al indicar que te hace falta llenar uno de sus campos vacÃos, te devuelve en blanco los otros campos que habÃas llenado?
Hoy voy a compartir contigo una forma sencilla -en PHP- para evitar que hagas perder tiempo a la gente y si le vas a pedir que llene los campos que tú necesitas, pues al menos le hagas el favor de conservar la información que ya te mandó.
Básicamente, el truco está en el value, donde lo que debes hacer es:
input type="text" name="nombre_campo" value="< ?php if (isset($_POST['nombre_campo'])) echo $_POST['nombre_campo']; ?/>"
Lo que hace ese PHP es revisar que si la variable se ha enviado por el método post y ya tiene un valor asignado, la imprime.
Es sencillo, no requiere de ciencias ocultas, pero a más de uno servirá.
Éxito y a estudiar mucho para aprender a hacer bien las cosas
74 Comentarios


junio 8th, 2007 at 7:53 am
hola!, ando teniendo un problemilla, quiero saber si me pueden quitar la duda. Tengo un formulario que no lo puedo redireccionar
espero que me puedan decir en que estoy fallando
Formulario
junio 25th, 2007 at 10:01 am
Hola, buenos dÃas; lo que sucede es que tengo un problemilla con la vinculacion de unos datos a una BD; lo que pasa es que tengo dos formularios, en el primero la persona se registra con su nombre, nuemro de cedula y demás, y estos datos se almacenana en la base de datos perfectamente y tengo redireccionado el segundo formulario para que me lo cargue inmediatamente; y de igual manera el usuario diligencia el segundo formulario que es un test, hasta ahi normal.. el problema radica en que tengo que vincular las tablas de las bases de datos, ya cree en la segunda tabla la llave foranea, pero no se como pasar del primer forumario el dato cedula al segundo formulario para guardarlo en la segunda tabla.. si alguien me peude ayudar lo agradezco inmensamente.
Gracias Aleja
junio 28th, 2007 at 1:48 pm
Recuerda que mysql_indert_id es una función que te devuelve el ID del registro más reciente que has guardado. Entonces, para traer los datos de ese ID, pues haces un query de select donde el ID es el mysql_insert_id metido en una variable.
Eso es todo.
junio 29th, 2007 at 9:39 am
Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in …..
es el error que me muestra al colocar lo suguerido..
echo “= 180){ alert(‘Has superado el tamaño máximo permitido’); return false; }\”>if(isset($_POST['textito']) echo $_POST['textito']“;
Algun comentario, para poder continuar… lo agradezco.
junio 29th, 2007 at 11:41 am
no se que estoy haciendo mal, lo copie tal cual pero lo que pasa es que en vez de que aparezca el dato que introduje aparece el codigo php, o sea en campo de texto aparece
julio 3rd, 2007 at 4:37 pm
gracias
agosto 1st, 2007 at 4:59 pm
necesito saber que estoy haciendo mal en este query, porfavor!
insert into mcerve1_paraempleados.mcerve1_bvcbvc.mbPuntos
values (
select id,idEmp,orden,clave,cantidad,puntos,fecha from mcerve1_paraempleados.dbo.mbpuntos_prueba where idEmp in
(select mbEmp_Id
from mcerve1_paraempleados.mcerve1_bvcbvc.mbEmpleados)
)
septiembre 1st, 2007 at 3:53 pm
Hola, ando como loca buscando un formulario gratuito que me mande los comentarios que me hagan a mi url, y si pasa por el correo mejor, claro, por si hiciera falta una criba. Gracias
septiembre 1st, 2007 at 6:08 pm
Saludos MarÃa, intentaste en HotScripts?
septiembre 4th, 2007 at 11:34 am
hola yo quisiera saber como hacer que si un usuario le da clik en guardar en un formulario si hay campos vacios le mande un error
septiembre 4th, 2007 at 12:35 pm
Lo puedes hacer con PHP (tal como arriba se indica) o con javascript. En ambos casos evaluando las variables vacÃas enviadas.
septiembre 6th, 2007 at 2:13 pm
he aprendido muchas cosas aqui,….es un sitio muy educativo…por otro lado quiero saber como puedo traer datos de una base de datos a una caja de texto o input )es un reporte y quiero hacer el codigo para traer datos a un formulario y luego imprimirlos en una impresora….necesito ayuda urgente….me estan midiendo el rendimiento y mis conocimientos….debo demostrar que los tengo…..
septiembre 6th, 2007 at 7:31 pm
Saludos Celin,
No es complicado lo que quieres hacer. Lo que puedo decir es que:
1.- Necesitarás hacer la consulta a la base de datos con un SELECT
2.- Sacar los datos especÃficamente que necesitas con haciendo un WHERE al ID de los registros que necesitas imprimir en pantalla
3.- Imprimirlo en papel será más fácil con javascript
No es complejo. En caso que te midan por conocimientos y/o rendimiento, recomiendo comiences a leer y practicar MUCHO hasta conseguir el nivel deseado.
Éxito!
octubre 13th, 2007 at 2:02 pm
miren mi pregunta es la siguiente quiero que la informacion que yo meta en un formulario se vaya a mi correo electronico no a mi servidor. me podrian enviar un codigo php o un script para poder hacer esto
octubre 26th, 2007 at 4:10 pm
hola
alguen me puede decir como vaciar un registro de una base de datos a una caja de texto en un jsp:
este es mi codigi jsp
<imput type = "text" name = "carrera" value="">eso quiero hacerlo pero junto con el demas conjunto de datos
solo que aki clave corresponde a una variable int en donde almaceno el valor que tiene clave en la bd
pero me marca error en”como vacio el dato al input type
diciembre 3rd, 2007 at 10:54 pm
Como puedo hacer para que los datos de un formulario se almacenen en una base de datos.o que el comentario que pongas acerca de una pagina aparezca en la misma pagina. por ejemplo los metros y ese tipo de cosas.
enero 25th, 2008 at 3:38 pm
Alguien sabe como dejar los datos en un formulario cuando manda error pero de un select o textarea o sea una lista desplegable… ayuda please…. gracias.
abril 7th, 2008 at 3:06 pm
Saludos! Luego de tanto y tanto buscar en la web, tu linea de codigo me resolvio un gran problema. Gracias!
abril 11th, 2008 at 10:28 am
Eso solamente sirve si tu action es a la misma pagina, pero si tu action es a un php diferente que haga la validacion la cosa cambia
abril 13th, 2008 at 2:26 am
hola que tal, soy nuevo en esto de PHP y quisiera saber si hay alguien que me pueda ayudar. necesito poner un boton que me genere un numero aleatorio y al dar clic sobre este me mande a un nuevo formulario pero en la misma página, en éste se pretende capturar un número tecleado y compararlo con el aleatorio y al presionar otro boton me mande a otra pantalla, pero nuevamente en la misma pagina donde los compare haciéndome saber cuál de ellos es mayor. Necesito hacer esto varias veces, en un ciclo, hasta que ambos numeros sean iguales y mostrar en pantalla el número de intentos.
para ello necesitaria que cada vez que se refresque la página no se genere un nuevo número aleatorio, sino solamente regrese al 2o formulario para teclear un nuevo numero y compararlo nuevamente.
estaba utilizando algo como esto:
if (!isset($_POST['submit']) )
{…}
else {…}
pero solo me funciona solo hasta el 2o formulario, si lo pongo nuevamente me regresa al boton que genera el numero y no a la 3er pantalla de los resultados.
Tambien quisiera saber si me sirve, y como usar lo siguiente:
print <META HTTP-EQUIV=”refresh” CONTENT=”3; URL=xxxx.php”
les agradecerÃa mucho su ayuda!
enero 15th, 2009 at 1:34 pm
Justo lo que estaba buscando!! mil gracias!!
marzo 15th, 2010 at 4:23 pm
Excelente, estaba buscando un control sencillo para evitar que los visitantes tengan que llenar de nuevo los campos. Me sirvió. Gracias
abril 14th, 2010 at 10:28 pm
Hombre, gracias por el tip, muy sencillo y eficaz, me sirvio 100%
mayo 11th, 2010 at 3:28 pm
hola pedro… 5 años despues de tu aporte… pero me salvaste la vida… de verdad que estaba como un loco hasta que di con tu post.
Gracias