Ai vecchi tempi della CGI avevamo molte forme che avrebbero attivato varie azioni di backend. Come notifiche di testo a gruppi, lavori di stampa, raccolta di dati, ecc.
Se l'utente si trovava su una pagina che diceva "Attendi ... Esecuzione di un lavoro ENORME che potrebbe richiedere del tempo". Erano più propensi a premere REFRESH e questo sarebbe MALE!
PERCHÉ? Perché innescherebbe lavori più lenti e alla fine impantanerebbe l'intera faccenda.
La soluzione? Consenti loro di fare la loro forma. Quando inviano il modulo ... Inizia il tuo lavoro e poi indirizzali a un'altra pagina che dice loro di aspettare.
Dove la pagina al centro conteneva effettivamente i dati del modulo necessari per iniziare il lavoro. La pagina WAIT tuttavia contiene una distruzione della cronologia di javascript. Quindi possono RICARICARE quella pagina di attesa quanto vogliono e non attiverà mai l'avvio del lavoro originale in background poiché quella pagina WAIT contiene solo i dati del modulo necessari per WAIT stesso.
Spero che abbia un senso.
La funzione di distruzione della cronologia ha anche impedito loro di fare clic su INDIETRO e quindi di aggiornarsi.
È stato molto semplice e ha funzionato alla grande per MOLTI anni fino a quando il non profit è stato liquidato.
Esempio: MODULO DI ISCRIZIONE - Raccogli tutte le loro informazioni e quando inviate, questo attiva il tuo lavoro di backend.
RISPOSTA dalla voce del modulo - Restituisce HTML che esegue un reindirizzamento alla tua pagina di attesa statica e / o POST / GET a un altro modulo (la pagina WAIT).
PAGINA DI ATTESA - Contiene solo dati FORM relativi alla pagina di attesa e javascript per distruggere la cronologia più recente. Come (-1 OR -2) per distruggere solo le pagine più recenti, ma consente comunque loro di tornare alla loro pagina di immissione FORM originale.
Una volta che sono nella tua pagina WAIT, possono fare clic su REFRESH quanto vogliono e non genererà mai il lavoro FORM originale sul back-end. Invece, la tua pagina WAIT dovrebbe includere un aggiornamento temporizzato META stesso in modo che possa sempre controllare lo stato del loro lavoro. Quando il loro lavoro è completato, vengono reindirizzati dalla pagina di attesa dove desideri.
Se lo fanno manualmente AGGIORNAMENTO ... Stanno semplicemente aggiungendo un altro controllo del loro stato di lavoro lì.
Spero che aiuti. In bocca al lupo.