Formulario editable y guardar cambios

Espero que esto no sea más difícil de lo que parece.

Quiero crear un formulario HTML con algunos cuadros de texto que permitan a las personas ingresar algunos datos y quiero que estos cambios se guarden en el formulario.

Por ejemplo, si mi página html dice:

Nombre: [ ]

… Quiero que alguien haga clic en [] e ingrese su nombre, etc. y haga clic en GUARDAR y luego haga que el formulario diga:

Nombre: “Nombre de la persona”

Si alguien quiere actualizar eso, puede hacer clic en el nombre de la persona y cambiarlo, hacer clic en GUARDAR y hacer que el formulario HTML se actualice solo.

¿Cómo puedo hacer esto? He buscado en todas partes y la gente está hablando de HTML5 Y PHP. ¿Realmente es tan complicado hacer una página simple como esta?

(En caso de que no fuera claro en mi html, estoy usando la opción contenteditable="true" . ¿Cómo puedo guardar esos cambios?)

Creo que su pregunta indica que aún no sabe que las páginas web (incluidos los formularios) son “sin estado”, lo que significa que no retienen o almacenan “automáticamente” nada que usted haga con ellas. Lamento decepcionarte, pero como principiante tendrás dificultades para encontrar una solución “fácil” para esto.

Eso no quiere decir que no se pueda hacer, sin duda lo verá en todas partes, pero su nivel de conocimiento omite el hecho de que necesita progtwigr la lógica para determinar cómo “aparecerá” su forma de almacenar la información y reproducirla. en una visita posterior.

Aquí hay un (realmente) breve resumen:

Cuando el usuario usa su formulario, ya se han hecho algunas cosas antes de que puedan ver el formulario:

  1. el usuario ha solicitado la página (escribiendo una URL o haciendo clic en un enlace)

  2. el servidor web ha enviado la página solicitada (es decir, su sitio web ha enviado el formulario)

Lo siguiente que ocurre es que su usuario ingresa algunos datos en el formulario. Estos datos no se almacenan en ninguna parte; si actualiza la página, los datos desaparecen, porque los pasos 1 y 2 vuelven a ocurrir.

Para evitar esto, puede utilizar una serie de herramientas:

Javascript : esto opera en la computadora del usuario. Puede usarlo para averiguar si algo se ha ingresado en un formulario y almacenarlo, por ejemplo, en una cookie.

Luego, tendrá que crear una lógica en su página que diga: “si mi usuario actualiza la página o regresa a este sitio en una fecha posterior, busque la cookie. Si existe, tome sus valores y prellene. el formulario, antes de que el usuario lo vea “.

Script del lado del servidor : esta lógica puede integrarse en su servidor web (usando un script del lado del servidor como PHP) para que realmente se ejecute en el paso 2.

Alternativamente, puede comstackrlo en una función javascript que se activa cuando el usuario realmente recibe la página. Este sería un paso 3.

Una segunda alternativa combina estas dos ideas (procesamiento en el lado del usuario y procesamiento en el lado del servidor web) llamadas AJAX, lo que básicamente significa que la “discusión” entre su javascript y PHP tiene lugar “sobre la marcha” cuando los datos se ingresan o cambian .

Y, por último, es posible que desee considerar Sesiones PHP para almacenar datos y / o una base de datos mySQL. Recientemente, con el advenimiento de los navegadores modernos, ahora tiene la posibilidad de almacenar la información en una base de datos local disponible para el navegador de su usuario …

En todos estos casos, tendrá que aprender cómo estas piezas se comunican entre sí, cómo recupera la información y cómo actualiza su forma estática y sin estado.

No es tan sencillo como podrías pensar …

No necesitas HTML5. HTML4 es lo suficientemente bueno 🙂

Pero necesita una secuencia de comandos del lado del servidor que guarde los cambios (en el lado del servidor, por ejemplo, en un archivo DB o XML). Para que sea una experiencia mejor (si varios usuarios usan el formulario al mismo tiempo), le sugiero que use AJAX para guardar los cambios y sondear las actualizaciones del servidor.

Esto no es complicado (al menos no creo que lo sea), pero parece ser una generación más de lo que ya sabes. Y podría llevar bastante tiempo establecer la estructura antes de que pueda hacer este tipo de cosas sin necesitar ayuda.

Hay algunas preguntas básicas

  • ¿La información debe permanecer guardada cuando el usuario acceda a la recarga?
  • ¿La información debe permanecer guardada cuando el usuario borre las cookies?

Si la información puede ser borrada la próxima vez que vuelvan a su página, entonces es simple.

De lo contrario, necesitamos una forma de hacer un seguimiento de qué usuario ve qué información, por lo que el tipo en Texas no ve la información que el tipo en Chinatown ingresó. Las cookies son una forma común de hacer esto. Puede guardar la información en las cookies si no hay demasiada información.

De lo contrario, necesita lenguaje de lado del lado. Esto es usualmente en PHP, pero ¿qué idioma tiene que ver con el motivo por el que quieres aprender? ¿Quieres trabajar para una empresa más adelante? ¿Tienes tu propia página web?

Coméntanos para saber más sobre lo que está sucediendo y cuáles son las respuestas a las dos preguntas básicas, y seré capaz de responder mejor.

Por lo general, en la mayoría de los casos, hay un nombre de usuario y contraseña (o OpenID), y si las cookies se borran, el usuario vuelve a iniciar sesión, pero esto requiere un poco de trabajo para configurar un inicio de sesión operativo antes de volver a visitar esta cuestión de cómo para almacenar lo que escriben