Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    376

    Link àncora e refresh della pagina

    ho un form da dove si inseriscono i messaggi del Guestbook.
    Dopo l'inserimento (action stessa pagina), con un javascript faccio un redirect ad un àncora che mostra tutti i messaggi.
    Se però premo F5 Firefox dice che le informazioni via Post saranno rinviate ecc.. infatti se procedo inserisco un nuovo messaggio uguale!
    Se invece, faccio un redirect non all'àncora ma alla pagina normale ecco che Firefox non mostra alcun avviso: dove è il problema?
    ciao

  2. #2
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,671
    il comportamento del browser è corretto, essendo la sessione aperta e variabili ancora vive.

    manca la parte in cui distruggi le variabili, o identifchi la sessione con un'altra varibile, o fai un redirect verso la stessa pagina dopo l'aggiornamento dei dati (non consigliabile: non è un metodo sicuro).

    se mi dici che linguaggio usi ti sposto nella sezione opportuna

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    376
    faccio il redirect alla stessa pagina ma solo dopo che il messaggio è stato inserito.
    Sequenza:

    1 inserisco il msg con form che punta alla stessa pagina (variabili POST ancora vive + avvertimento del browser)
    2 redirect JS alla pagina.

    Vorrei capire perchè questo procura il warning del browser:
    codice:
    setTimeout("window.location.href='pagina.php?id=12#guestbook'", 4000)
    e questo no:
    codice:
    setTimeout("window.location.href='pagina.php?id=12'", 4000)

  4. #4
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,671
    Originariamente inviato da LucianoS
    Vorrei capire perchè questo procura il warning del browser:
    codice:
    setTimeout("window.location.href='pagina.php?id=12#guestbook'", 4000)
    e questo no:
    codice:
    setTimeout("window.location.href='pagina.php?id=12'", 4000)
    non saprei... ipotizzo che percependo la variabile in querystring cerca di passarle tutte (ma intendimi: sto fantasticando).
    il redirect con JS non è una gran trovata

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    376
    ma se non lo faccio in JS non posso neanche usare php perchè heder() va inviato prima di ogni output.
    Se non lo faccio proprio, ad ogni Refresh viene inserito di nuovo il post.

  6. #6
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,671
    distruggi-aggiorna-elimina le variabili di sessione, no?
    fallo dopo l'insert e dovresti essere a posto
    lavora lato server che così hai tutto sotto controllo

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 © 2024 vBulletin Solutions, Inc. All rights reserved.