Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,812

    impedire doppio inserimento da parte dell'utente

    in un'area riservata l'utente aggiunge record al DB via post

    capita che, invece di proseguire nelle operazioni coi comandi a video, l'utonto clicki sul "indietro" del browser.
    a questo punto il browser gli dice che la pagina è scaduta e che per proseguire bisogna reinviare i dati.
    l'utonto che fa? reinvia...
    ecco che ci troviamo un record duplicato.
    non vorrei fare un controllo su tutti i campi perchè è un lagna
    e comunque è possibile che si presenti la condizione dove, appunto, ci siano dati identici

    come prevengo questo errore?

  2. #2
    appena entri nella pagina, setta una variabile di sessione. se ci rientri e la trovi già piena... sai cosa fare

  3. #3
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,812
    funziona troppo bene: ci dev'essere qualcosa che non va

    allora... provicchiando qua e là ho questa situazione:

    nella pagina col form setto Session("controllo")= 0
    nella pagina che elabora setto If Session("controllo")= 0 Then eseguo,
    e questa porta (redirect) alla pagina risultato.

    cliccando su indietro (nella pagina risultato) il problema non si presenta più e non ci sono problemi di sorta: si va alla pagina del form, nessun inserimento doppio ne errori.

    ero partito con voler scrivere messaggi di errore e/o redirect ma non è necessario, se funziona

    ma perché funziona?
    di fatto non ho modificato o agito sulla variabile in alcun modo
    me la ritrovo viva anche nella pagina risultato

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Originariamente inviato da Vincent.Zeno
    funziona troppo bene: ci dev'essere qualcosa che non va
    Anche secondo me, di fatto impostare una sessione per la cronologia (il tasto indietro) del browser dovrebbe essere ininfluente
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,812
    Originariamente inviato da cavicchiandrea
    Anche secondo me, di fatto impostare una sessione per la cronologia (il tasto indietro) del browser dovrebbe essere ininfluente
    facendo un controllo nelle cronologia dei vari browser:
    il file che elabora a volte c'è, a volte non c'è.

    su safari vedo l'indirizzo, ma l'anteprima è quella della pagina risultato.

    insomma: visto che arrivando alla pagina elabora si viene inoltrati alla pagina risultato,
    la cronologia non tiene tanto in considerazione questa pagina intermedia.
    questo su 5 browser convenzionali: IE6, FF, OP, CR, SF.
    appena posso controllo con IE8 ma immagino il risultato

    quello che mi è poco comprensibile è che le sessioni sono comunque dichiarate (siamo in un'area riservata e una SessioneUtente me la porto sempre dietro).
    come mai tutto questo accade semplicemente dichiarando un'altra variabile tra le pagine?

    a me sta bene ma mi piacerebbe sapere "perché"... come funziona...

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.