elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Recargar pagina php
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Recargar pagina php  (Leído 2,672 veces)
kakashi20


Desconectado Desconectado

Mensajes: 435


Ver Perfil
Recargar pagina php
« en: 12 Septiembre 2014, 03:10 am »

Hola

Normalmente cuando uno programa en php y tiene una formulario y al efectuar este form, se envía a otra pagina donde internamente se ejecuta por medio de un script php alguna instruccion sql, ya se de insertar, update, delete, etc..

El detalle viene su el usuario por curiosidad, o por algún otro motivo le da click en recargar esa pagina, ese script sql en php vuelve y se ejecuta, y eso seria muy molesto que de pronto se inserte doble o salga un error porque se ejecuta de nuevo eso.

Como se podría evitar eso ?

He visto aplicaciones que recargan esas pagina donde se ejecuta algún formulario y no sucede eso de lo que estoy hablando.

Alguna sugerencia o ayuda sobre esto ?

Gracias.


En línea

Graphixx


Desconectado Desconectado

Mensajes: 1.336


Full Stack Developer


Ver Perfil WWW
Re: Recargar pagina php
« Respuesta #1 en: 12 Septiembre 2014, 03:25 am »

Por lo general los datos estan ligados a una clave primaria (primary key) que se definio al maquetar el SQL, lo que uno hace es verificar si por el campo primario ya se agregaron los datos del formulario no se vuelven a agregar... ahora bien otro tema es que fuera algo estilo un formulario de contacto ese no verifica nada y simplemente vuelve y ejecuta todo, en ese sentido no se me ocurre nada. Depronto con variables de sesion se podria controlar, y algun codigo que no destruya la variable de sesion hasta que se cierre la ventana.


En línea

Nada tiene fin solo hay pequeñas pausas, pausas que determinan el comienzo de otros. Graphixx Rōninnovation
Pablo Videla


Desconectado Desconectado

Mensajes: 2.274



Ver Perfil WWW
Re: Recargar pagina php
« Respuesta #2 en: 12 Septiembre 2014, 21:53 pm »

Puedes hacer un redireccionamiento a la pagina anterior si vas a otro script, que vuelva a una pagina anterior desde php o puedes usar ajax para enviar la peticion por debajo sin recargar nada, hay muchas otras opciones mas.

O para que no inserte lo mismo, valida que eso que registraste no exista antes de enviarlo nuevamente.

Todo depende de lo que estas haciendo y de lo que quieres evitar exactamente.
En línea

MinusFour
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.529


I'm fourth.


Ver Perfil WWW
Re: Recargar pagina php
« Respuesta #3 en: 13 Septiembre 2014, 19:18 pm »

Si usas POST para tu inserciones de SQL, el navegador debería alertar al usuario que está tratando enviar información nuevamente al servidor.

Claro que siempre deberías tener una especie de control desde el backend para evitar acciones duplicadas.
En línea

JorgeEMX
Ex-Staff
*
Desconectado Desconectado

Mensajes: 2.615



Ver Perfil WWW
Re: Recargar pagina php
« Respuesta #4 en: 14 Septiembre 2014, 05:46 am »

Ocupa AJAX para tal motivo. Los navegador por defecto tienen ese comportamiento cuando se envía peticiones POST y éste los detecta.
En línea

Graphixx


Desconectado Desconectado

Mensajes: 1.336


Full Stack Developer


Ver Perfil WWW
Re: Recargar pagina php
« Respuesta #5 en: 16 Septiembre 2014, 15:46 pm »

Te dejo un ejemplo sencillo de usar AJAX con la BD incluida.
http://www.4shared.com/zip/bemLccivba/ejajax.html
En línea

Nada tiene fin solo hay pequeñas pausas, pausas que determinan el comienzo de otros. Graphixx Rōninnovation
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines