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 Responses to “Mantener datos al enviar formulario”

Páginas: « 1 [2] Mostrar todos

  1. 51
    oruga Says:

    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

  2. 52
    Alejandra Says:

    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

  3. 53
    Pedro Says:

    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.

  4. 54
    laura Says:

    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.

  5. 55
    ezequiel Says:

    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

  6. 56
    Juan Says:

    gracias

  7. 57
    Tania Says:

    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)
    )

  8. 58
    maria Says:

    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

  9. 59
    Pedro Says:

    Saludos María, intentaste en HotScripts?

  10. 60
    claudia Says:

    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

  11. 61
    Pedro Says:

    Lo puedes hacer con PHP (tal como arriba se indica) o con javascript. En ambos casos evaluando las variables vacías enviadas.

  12. 62
    Celin Says:

    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…..

  13. 63
    Pedro Says:

    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!

  14. 64
    Margot Gonzalez Aguilar Says:

    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

  15. 65
    lili Says:

    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

  16. 66
    Cesar Says:

    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.

  17. 67
    GDM Says:

    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.

  18. 68
    Charlie Says:

    Saludos! Luego de tanto y tanto buscar en la web, tu linea de codigo me resolvio un gran problema. Gracias!

  19. 69
    cainzer0 Says:

    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

  20. 70
    kaka22 Says:

    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!

  21. 71
    darling Says:

    Justo lo que estaba buscando!! mil gracias!!

  22. 72
    Paul Says:

    Excelente, estaba buscando un control sencillo para evitar que los visitantes tengan que llenar de nuevo los campos. Me sirvió. Gracias

  23. 73
    Jairo Says:

    Hombre, gracias por el tip, muy sencillo y eficaz, me sirvio 100%

  24. 74
    Brahyan Says:

    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

Páginas: « 1 [2] Mostrar todos

Leave a Reply