Historias
Slashboxes
Comentarios
 
Este hilo ha sido archivado. No pueden publicarse nuevos comentarios.
Mostrar opciones Umbral:
Y recuerda: Los comentarios que siguen pertenecen a las personas que los han enviado. No somos responsables de los mismos.
  • por Diox69 (14895) el Lunes, 09 Mayo de 2005, 09:47h (#498939)
    ( http://spain.isdifferent.com/ )
    todos tenemos el problema de que el usuario le de a recargar la pagina (o incluso al ir hacia atras) y acto seguido diga que quiere reenviar los datos del anterior formulario y entonces haga dos compras del mismo producto o vete tu a saber.

    La idea esta en que si al navegador le mandas una recarga de la propia pagina, la interpreta como la pagina actual y no como una pagina mas, por tanto, si le das a atras, iras a la pagina anterior, no a la que has recargado(no se si me explico), ejemplo grafico:

    pagina a con un formulario (post) que con action a la pagina b.
    click en el formulario.
    pagina b, recibe los datos, hace un insert en una base de datos con los datos recibidos del formulario, lanza un <META HTTP-EQUIV=Refresh CONTENT="0; URL=(pagina)"> (en el caso de PHP se hace con la funcion header) y se recarga a si misma.

    si recargamos la pagina no repite el insert, pues no tiene datos del formulario, ya que ha salido de un refresh, ademas, si damos hacia atras, vamos a la pagina a, no a la pagina b antes del refresh.

    OJO, esto esta provado si lo haces sin mostrarle ninguna cosa al navegador, solo el refresh, si le muestras alguna cosa, puede que se comporte de otra manera.

    PD:el URL=(pagina) del meta tag, no es obligatorio si es la misma pagina.
    --

    --
    El mejor software libre es el cerebro humano.
    JUST USE IT [isdifferent.com]
    [ Padre ]