credo che tu abbia progettato in malo modo l'applicativo...
generalmente le registrazioni con conferam si basano su due tabelle mysql:
1) la prima contiene (chiamiamola tabella "utenti"), oltre che tutti i campi dedicati alle info da conservare (username, password, email, etc.), avrà un campo che possiamo chiamare "convalida" che può assumere valori di natura boleana (0/1, TRUE/FALSE, etc.).
2) la seconda tabella ("convalida_registrazione") conterrà un campo relazionato con la tabella "utenti" in base all'id, e un campo al cui interno salvi stringhe casuali univoche.
Al momento della registrazione tramite un form nel tuo sito dovrai:
- inserire il record nella tabella "utenti" e nel campo convalida metti 0 (zero);
- generare una stringa random e salvarla nella tabella "convalida_registrazione" unitamente con l'id della tabella "utenti" dell'utente che si è appena registrato;
- la stringa random di cui sopra la invii come variabile GET in un link all'interno della email che invierai
Al momento in cui l'utente punterà sul link con la variabile GET fara una SELECT sulla tabella "conferma_registrazione" e se viene individuato un record e quindi l'id relazionato alla tabella "utenti" esegui l'UPDATE del campo "convalida" della tabella "utenti" trasformandolo ad 1.
Sono sicuro di non essere stato chiarissimo...
EDIT:
se ti interessa fissare un limite di 48 ore puoi creare nella tabella "convalida_registrazione" un campo in cui salvi il TIMESTAMP e la SELECT che effettui gli poni come condizione quella delle 48 ore

Rispondi quotando