Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    4,826

    intercettare refresh ispostback e finestra ritrasmetti ff

    ciao.
    Ho utilizzato un metodo per intercettare il refresh della pagina,nel mio script :controllo che il pulsante submit abbia un nome preciso e lo testo , chiaramente se premo il pulsante avro il suo nome altrimenti no.
    Il problema è che se faccio un refresh della pagina ff mi presenta un dialogo che chiede di ricaricare tutti i dati, esiste un modo per evitare questo dialogo e procedere senza ricaricare li dati?

    grazie.

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Se il form devi usarlo in modalità POST come invio dati non puoi eliminarlo è una sicurezza insormontabile, se cambi la modalità d'invio GET non ci sarà la richiesta di conferma da parte del browser
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    4,826
    non c'è un meta o un headeer php per che so io cancellare la cache e non fare apparire l'avviso?
    Perchè la dinamica è :
    1)inserisco prodotto
    2)passo su un altra pagina
    3)faccio il back e torno sulla pagina dove ho inserito il prodotto
    4)faccio refresh , appare l'avviso e poi mi reinserisce il prodotto e , ho notato che tutte le variabili all' interno dopo il refresh sono ripristinate, quindi è una spece di cache penso.
    ciedo a voi,.

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    E' il browser a ricordarsi che da lì ci sei già passato, PHP non può farci niente.
    E' la logica della tua applicazione ad essere sbagliata.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    4,826
    Quote Originariamente inviata da Alhazred Visualizza il messaggio
    E' il browser a ricordarsi che da lì ci sei già passato, PHP non può farci niente.
    E' la logica della tua applicazione ad essere sbagliata.
    Grazie Alhazred, ti spiego quello che faccio se potessi darmi una mano:
    Quando uno preme il tasto submit del form vado a controllare che il tasto premiuto sia quello giusto e qui , penso entra in campo il POST e le sue variabili.
    Il problema è quando faccio il refresh mi appare la dialog e ripristina tutti i dati post tra cui anche il tasto premuto e vede il test sul tasto premuto come giusto , quindi dopo un if del genere:
    codice:
    if (Tools::isSubmit('aggcar'))
    Tools::isSubmit('aggcar') ritorna ancora true e quindi aggiunge il prodotto con le funzioni che stanno all interno di sudetto if
    if (Tools::isSubmit('aggcar')) :aggcar è il nome del dubmit e la funzione è una funzione di prestashop ma potrebbe anche esssere fatto in php senza la funzione, la uso per comodità.

    per capire : quando le variabili post entrano nel browser(scusa se dico sfondoni) e riappaiono dopo un refresh che chiede di ripristinare?
    perchè appare quel dialogo e quando.
    I dati post vanno in una sorta di cache?
    ho pensato alla cache perchè se prima di fare il refresh svuoto la chache tutto va come deve andare e il prodotto non viene aggiunto.
    Ho poi letto in google che esiste il modo di non tenere una cache con un meta cache-expired o qualcosa del genere ma per capire chiedo .
    Come dovrebbe essere la logica dell applicazione che adesso è sbagliata? e come correggerla?

    grazie.

  6. #6
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    la cosa migliore che puoi fare, secondo me, è fare un redirect verso la stessa pagina da cui sei partito
    in pratica
    - pagina iniziale
    -- submit
    --- elaborazione (su nuova pagina o sulla stessa)
    ---- redirect verso pagina iniziale

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    4,826
    Quote Originariamente inviata da clasku Visualizza il messaggio
    la cosa migliore che puoi fare, secondo me, è fare un redirect verso la stessa pagina da cui sei partito
    in pratica
    - pagina iniziale
    -- submit
    --- elaborazione (su nuova pagina o sulla stessa)
    ---- redirect verso pagina iniziale
    grazie 1000 si un grande.
    ciao.

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.