Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    117

    Alternativa alle variabili di sessione

    Ciao a tutti,

    stò sviluppando un applicazione che raccoglie i dati personali dell`utente.

    La raccolta dei dati si svolge in 5 pagine distinte con al loro interno un form.

    Non vorrei utilizzare le variabili di sessione per archiviare i dati inseriti nelle pagine precedenti nell`attesa di salvarli definitivamente su MYSQL.

    Ho pensato alla soluzione di archiviarli direttamente su un DB MYSQL.

    A questo punto sorge il problema, come faccio ad eliminare definitivamente i dati archiviati in eventualità che la connessione con il client salti o all`eventualità che l`utente interrompa o chiudi il browser prima di aver accettato la normativa per il trattamento dei dati personali?

    Grazie a tutti.

  2. #2
    secondo me ti conviene portarti dietro i dati con i metodi post o get e poi solo dopo l'accettazione le archivi in mysql.
    è meglio tacere e far credere di essere stupido piuttosto che parlare e togliere ogni dubbio

  3. #3
    Il piu' semplice e' di mettere un campo con una flag aperto/chiuso ed un campo con una data ultimo aggiornamento (ideale un timestamp).

    Superato un time-out se ancora aperto elimini il record. Si potrebbe mantenerlo aperto associandolo allo user, in modo che se ritorna si trova ancora la sua roba dentro, ma se ha abbandonato e' probabile che quel che c'e' non lo interessi piu'.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    117
    Inanzitutto mi scuso per il ritardo vergognoso con il quale vi rispondo , sono stato un pò lontano dalla vita lavorativa !!!

    Tra le due proposte preferisco quella di piero.mac.

    Comunque ringrazio anche luqwe.

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    117
    Originariamente inviato da piero.mac
    Il piu' semplice e' di mettere un campo con una flag aperto/chiuso ed un campo con una data ultimo aggiornamento (ideale un timestamp).

    Superato un time-out se ancora aperto elimini il record. Si potrebbe mantenerlo aperto associandolo allo user, in modo che se ritorna si trova ancora la sua roba dentro, ma se ha abbandonato e' probabile che quel che c'e' non lo interessi piu'.
    Scusa la mia domanda un pò stupida. Come faccio a cancellare il record che ha superato il time-out se volontariamente o per errore l'utente chiude il browser o la connessione salta?

    Esiste un evento in PHP che rilevi se un utente è ancora connesso o meno?

    Riusciresti ad inserire un breve esempio di come risolveresti il problema?

    Grazie 1000 per il tuo aiuto!!!

  6. #6
    Leggi questo thread.

    Anche se usa le sessioni, trovi un esempio di come cancellare i record obsoleti....


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2001
    residenza
    rimini, san marino
    Messaggi
    934
    Io ho usato lo stesso metodo per un mini ecommerce. in pratica nell'ultima pagina, solo per chi ha concluso la registrazione fai scrivere un valore in un campo.

    quindi ogni giorno oppure ogni quanto vuoi te fai fare un controllino ad uno script; se è presente questo valore in questo campo vuol dire che la registrazione è andata a buon fine, sennò vuol dire che l'utente è scappato prima di concludere la registrazione.

    io almeno ho fatto così perchè mi risultava incasinato usare le sessioni che ancora non conosco bene.

    Ciao,
    Ale

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    117
    Grazie a tutti !!! Adesso cerco di applicare la tecnica da voi segnalata !!!


  9. #9
    quello da te posto è un tipico problema che si risolve con le transazioni. Se il tuo database MySQL supporta le tabelle di tipo InnoDB il gioco è fatto.

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    117
    Originariamente inviato da Gianni_T
    quello da te posto è un tipico problema che si risolve con le transazioni. Se il tuo database MySQL supporta le tabelle di tipo InnoDB il gioco è fatto.
    Ciao Gianni_T, ti ringrazio per il tuo ulteriore consiglio.

    Riusciresti a spiegarmi in breve come funzionano le transazioni in un DB?

    PS: Comunque in attesa di una tua risposta inizio a cercare un pò di informazioni su google ...

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.