Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    errore tasto indietro parametri get

    Salve a tutti, ho cercato un po' ma non ho trovato nulla a riguardo e spero che dal titolo si intuisca il problema che vado a spiegarvi in dettaglio.
    Dunque, in poche parole, se passo dei parametri via get, visito un'altra pagina e poi torno indietro col tasto "indietro" del browser, quei parametri vengono passati nuovamente; se il parametro passato è nel mio caso l'ID di un prodotto da aggiungere al carrello, quel prodotto verrà aggiunto una seconda volta. Lo stesso vale quando un prodotto viene eliminato. Di conseguenza ho errori sulle query.

    Lo so, forse avrò sbagliato approccio, anzi sicuramente; sarebbe stato meglio uno script o tutt'al più passare i parametri via post, per la gestione del carrello. Ma ormai la frittata è fatta.

    Quindi esiste un modo per limitare questo tipo di problemi, per rilevare quando una pagina viene ricaricata dal tasto "indietro" del browser?

    Vi ringrazio in anticipo per le risposte e chiedo scusa per la mala gestione del carrello, è la prima volta che lo faccio e questi inconvenienti mi serviranno come esperienza per progetti futuri.

  2. #2
    No, non esiste una soluzione corretta che non includa modificare il tuo codice per ricevere TUTTI i parametri che modificano i dati sempre e solo tramite POST.

    In effetti, è proprio per questo che i browser sono costruiti per non richiedere mai una conferma se inviano di nuovo una richiesta GET, e per richiedere sempre conferma se riinviano una richiesta POST.

    Non vedo però quale sia la difficoltà nel modificare il tuo codice perchè queste operazioni avvengano via post: un link <a> che aggiunge un articolo al carrello può essere sostituito da un <form action="la stessa url del link"><input type="hidden" name value>...<input type=submit value="aggiungi al carrello"></form>, e nel codice della pagina di destinazione dovrai sostituire qualche $_GET con $_POST...

    Mi sembra una correzione fattibilissima!
    "Le uniche cose che sbagli sono quelle che non provi a fare."
    Atipica

  3. #3
    Ti ringrazio per la celere e dettagliata risposta. Metterò in pratica e farò tesoro del tuo suggerimento.
    Grazie mille!!! ^_^

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.