Visualizzazione dei risultati da 1 a 5 su 5

Discussione: registrazione univoca

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2002
    Messaggi
    163

    registrazione univoca

    ciao a tutti,
    con un form invio i dati al modulo che controlla che non siano già presenti nel DB, tra questi dati c'è l'username. Una volta controllato e visto che non c'è, chiedo all'utente la conferma dei dati e li scrivo nel DB.
    Il problema è che se qualcun'altro fa' la stessa procedura mentre al primo utente chiedo la conferma, e inserisce proprio lo stesso username, la procedura non lo trova scritto nel DB.
    Il caos nasce quando tutti e due confermano e inseriscono nel DB. A questo punto ci sono due registrazioni con lo stesso Username.

    Soluzioni?

  2. #2
    Inseriscilo subito. Se lo conferma lo lasci altrimenti lo cancelli o aggiorni.


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

  3. #3
    Piazza nel db un campo dattime che setti al momento dell'iscrizione con la formula date("Y-m-d H:i:s").
    E fai il controllo su questo campo al momento della conferma.

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2002
    Messaggi
    163
    Valutando le risposte:
    quella di Piero.Mac, mi piace di più perchè mi sembra la più sicura.
    Quella di Baluba, non mi sembra troppo sicura, ci può sempre essere lo sfi...gato che inserisce lo stesso momento di un altro.

    Grazie a tutti e due comunque.

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    460
    Consiglio di fare come dice piero, con un'nica aggiunta: se i dati vengono inseriti in form successivi, e' possibile che dopo che hai inserito lo username nel primo form il client muoia, vada in crash, si stufi, gli venga l'ebola. In quel caso, ti rimane lo username bloccato senza motivo.

    Aggiungi un campo con il timestamp di inserimento e un campo di inserimento validato. Decidi un periodo sufficientemente elevato (ad esempio pari al tempo di sessione) e poi fai in modo di cancellare in automatico tutti i record non validati con timestamp piu' vecchio del valore deciso sopra.
    There are 10 types of people in the world - those who understand binary and those who don't.

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.