Foros del Web » Programando para Internet » PHP »

Evitar re-insercion de datos al actualizar pagina

Estas en el tema de Evitar re-insercion de datos al actualizar pagina en el foro de PHP en Foros del Web. Hola a todos espero puedan ayudarme, tengo la siguiente duda: Tengo un registro en php el cual inserta datos en una base de datos y ...
  #1 (permalink)  
Antiguo 30/10/2008, 11:59
 
Fecha de Ingreso: abril-2007
Mensajes: 11
Antigüedad: 17 años
Puntos: 0
Evitar re-insercion de datos al actualizar pagina

Hola a todos espero puedan ayudarme, tengo la siguiente duda:

Tengo un registro en php el cual inserta datos en una base de datos y al realizar la insercion me redirige a otra pagina la cual muestra los datos insertados anteriormente, el punto es q si yo le doy F5 o actualizar me vuelve a insertar dichos datos, lo cual me esta ocasionando insercion de datos duplicados, alguien podria darme un a idea de como evitar que suceda esto ???

Gracias.

  #2 (permalink)  
Antiguo 30/10/2008, 12:08
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Evitar re-insercion de datos al actualizar pagina

Hola el.alexito,

Usa header() al final de tu proceso para redirigir a la pagina del formulario, con eso borras los datos de POST y evitas ese comportamiento.

Saludos
  #3 (permalink)  
Antiguo 30/10/2008, 12:08
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Evitar re-insercion de datos al actualizar pagina

Si usás la cabecera Location para redirigir (con header), al actualizar la página no debería haber una re-inserción de los datos.
Para esto, tenés que separar las cosas en 3 pasos (no necesariamente 3 páginas diferentes): la página que contiene el formulario, la que procesa los datos, y la que muestra el resultado. Si hacés que el flujo sea

formulario --> (via POST) --> procesamiento --> (via header()) --> resultados

solucionás el problema.

Pero en realidad el tema es más complejo que eso, ya que perfectamente puedo volver hacia atrás e ingresar los datos de nuevo. Podría de forma maliciosa entrar en una cadena de "atrás -> enviar -> atrás -> enviar...".
Ya dependerá de tu aplicación el cómo manejás esta situación, pero al menos el problema específico por el que preguntás ya queda solucionado.


Saludos.
  #4 (permalink)  
Antiguo 30/10/2008, 12:34
 
Fecha de Ingreso: abril-2007
Mensajes: 11
Antigüedad: 17 años
Puntos: 0
Respuesta: Evitar re-insercion de datos al actualizar pagina

Hola, gracias por su respuesta,

Me acabo de dar cuenta que solo fue momentaneo dicho comportamiento ya que como estaba haciendo pruebas sobre dicho archivo y era por eso que estaba conservando esa informacion en memoria y si de echo siempre suelo utilizar 'header- Location' para redirigir mis paginas, aun asi les agradezco.



Gracias.
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 11:28.