Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Aktywacja konta użytkownika
Forum PHP.pl > Forum > PHP
arcktick
Pisze forum oparte na php i mysql chcialbym zrobic aktywacje konta uzytkownika poprzez klikniecie linku wyslanego na jego adres email ktory podal podczas instalacji. Macie jakies sugestie ?
sebik
ja bym dodal w tabeli uzytkownikow pole np. "aktywne" domyslnie przy rejestracji ustawiane na 0, na mail uzytkownika wysylasz link do skryptu, ktory ustawia to pole na 1, oczywisci link musi przekazac id uzytkownika
paweln
Tak jak wyżej tylko ja bym jeszcze dodatkowo zabezpieczył dodając token np.: z MD5 daty i czasu. Wstawił do bazy i później z tym porównywał.

http://www.twojadomenta.pl?login=email@dom...gf3g4f3g4f3gf43 coś takiego

przy rejestracji wstawiasz do bazy login, 0 do kolumny aktywny i generujesz token
  1. <?php
  2. $token=MD5(uniqid(time())); //i do bazy go przy rejestracji
  3. // potem robisz treść maila a w nim min.:
  4.  
  5. $treść="http://twoja domena.pl?login={$_POST['login']}&kod=$token";
  6.  
  7. //rozpoznajesz i robisz update 0 na 1 i po sprawie
  8. ?>


ja dodatkowo robię dwie kolumny register_date i activ_date, żeby wiedzieć kiedy się rejestrował i aktywował.

To tak po krótce, przepraszam za chaotyczność.
scanner
Przesyłanie w linku loginu jest zbędne.
Wystarczy sam token. Oczywiście token jest tez zapisywany w bazie podczas rejestracji. Wystarczy je tylko porównać i ustawić flagę aktywności konta.
rml
a jesli dwoch userow zarejestruje sie w dokladnie tej samej sekundzie?
kwiateusz
moze jako token stosowac md5 z czas+login to jest juz nie jest powtarzalne...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.