Foros del Web » Programando para Internet » PHP »

evitar el efecto de recargar la página

Estas en el tema de evitar el efecto de recargar la página en el foro de PHP en Foros del Web. buenos días, tengo un formulario para añadir datos a una tabla de una base de datos mysql que tiene como clave principal un campo autonumérico. ...
  #1 (permalink)  
Antiguo 07/06/2005, 04:40
 
Fecha de Ingreso: abril-2005
Ubicación: vivo donde puedo
Mensajes: 133
Antigüedad: 19 años
Puntos: 0
evitar el efecto de recargar la página

buenos días,

tengo un formulario para añadir datos a una tabla de una base de datos mysql que tiene como clave principal un campo autonumérico. añado el registro muy bien pero si recargo la página de respuesta se duplica el registro con otro número de clave principal. debería de haber una forma de evitar esto para que un usuario poco experto no se lie. os agradecería cualquier comentario por breve que sea o cualquier pista que pueda ayudarme.
__________________
Visita mi página web.Carlos Zapata Company
Visita mi blog.
Únete a mi lista de correo.
--------------------------------------------------
La identidad no es lo que fuimos, ni lo que creemos que somos; la identidad es cómo miramos la mundo.

José Luis Rodríguez Zapatero, actual presidente del Gobierno español.
  #2 (permalink)  
Antiguo 07/06/2005, 05:17
 
Fecha de Ingreso: abril-2002
Mensajes: 1.014
Antigüedad: 22 años
Puntos: 8
Hola,

Al guardar el registro no se te borra el contenido del formulario ?

Suponiendo que el botón Submit se llama btnGuardar, puedes poner en el principio de la página .php:

<?
if $_POST["btnGuardar"]
{
... insertar
}
?>
  #3 (permalink)  
Antiguo 07/06/2005, 05:40
 
Fecha de Ingreso: marzo-2005
Mensajes: 163
Antigüedad: 19 años, 1 mes
Puntos: 0
El problema es que la recarga o refresh ejecuta la ultima accion. De este modo lo ultimo es el envio del formulario. Para solucionar esto una ves que terminaste de insertar el valor realiza una redireccion al php que muestra la pagina de respuesta, en ves de mostrar dicha pagina en forma directa. No se si se entiende la idea?
Cualquier cosa ya diras.
Saludos
  #4 (permalink)  
Antiguo 07/06/2005, 08:36
 
Fecha de Ingreso: abril-2005
Ubicación: vivo donde puedo
Mensajes: 133
Antigüedad: 19 años
Puntos: 0
contestando a MikiBroki,

no, no se borra el formulario cuando lo envío.
¿qué debería de poner donde tu pones insertar....?

contestando a Martin Tandil,

he leído varias veces tu mensaje y la verdad es que no capto la idea
__________________
Visita mi página web.Carlos Zapata Company
Visita mi blog.
Únete a mi lista de correo.
--------------------------------------------------
La identidad no es lo que fuimos, ni lo que creemos que somos; la identidad es cómo miramos la mundo.

José Luis Rodríguez Zapatero, actual presidente del Gobierno español.
  #5 (permalink)  
Antiguo 07/06/2005, 12:43
 
Fecha de Ingreso: marzo-2005
Mensajes: 163
Antigüedad: 19 años, 1 mes
Puntos: 0
ok, la idea es esta:Inicialmente armas un formulario, cuando le haces submit al formulario un php lo procesa y al finalizar muestra un html de respuesta.Esto es si no entendi mal el funcionamiento de lo que tu haces.
Lo que planteo es que cuando procesas el formulario e insertas a la base o lo que hagas, en ves de mostrar el html pongas algo asi:

header("Location: respuesta.php?respues=ok");

y en respuesta.php lo que haces es escribir efectivamente el html de respuesta.
Con esto lo que logras es que la ultima accion que se ejecuto es la redireccion de respuesta.php cpn lo cual si recargas la pagina te mostrara el mensaje sin procesar el formulario nuevamente
Espero que quede mas claro, ya que mi habilidad explicativa deja mucho que desear :)
Saludos
  #6 (permalink)  
Antiguo 08/06/2005, 04:03
 
Fecha de Ingreso: abril-2005
Ubicación: vivo donde puedo
Mensajes: 133
Antigüedad: 19 años
Puntos: 0
entiendo entonces que esta línea

header("Location: respuesta.php?respues=ok");

tengo que ponerla en la página de respuesta ¿no?

es que tengo muy poca experiencia con php. gracias
__________________
Visita mi página web.Carlos Zapata Company
Visita mi blog.
Únete a mi lista de correo.
--------------------------------------------------
La identidad no es lo que fuimos, ni lo que creemos que somos; la identidad es cómo miramos la mundo.

José Luis Rodríguez Zapatero, actual presidente del Gobierno español.
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 10:46.