![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 122 Pomógł: 1 Dołączył: 6.11.2008 Skąd: /etc/passwd Ostrzeżenie: (0%) ![]() ![]() |
Witam, napisałem prosty skrypt newslettera, który to dodaje z formularza adres email do bazy danych.
Chciałbym i nie wiem jak to rozwiązać, zrobić weryfikację emaili. Po dodaniu na adres email leci weryfikator z linkiem w postaci adres.pl/newsletter.php?verify=adres@domena.pl&code=tutaj_jakis_hash i jak ktoś kliknie to w bazie zmieni się pole weryfikacja z 0 na 1. Z bazą sobie poradzę, ale jak wykonać taki weryfikator. Pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 285 Pomógł: 37 Dołączył: 18.12.2007 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
a czego konkretnie nie wiesz?
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 592 Pomógł: 445 Dołączył: 12.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
W bazie obok pola email robisz pole hash, potem zwykły select który pobierze rekord where email jest mailem z linku, a hash (jak się łatwo można domyśleć) jest hashem. Jeśli zwróci rekord jest ok, zmieniasz weryfikację na 1
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 493 Pomógł: 32 Dołączył: 14.04.2008 Skąd: Lenkowski.net Ostrzeżenie: (0%) ![]() ![]() |
vokiel ma rację, możesz też ew. rozwiązać to w bardziej banalny sposób i zrobić np tak że twój kod potwierdzający to md5 z maila + ziarno. Np.
potem pobierasz sobie nazwę tego maila, dodajesz ziarno (wlazł kotek...) i sprawdzasz czy otrzymany wynik jest równy hashowi. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 122 Pomógł: 1 Dołączył: 6.11.2008 Skąd: /etc/passwd Ostrzeżenie: (0%) ![]() ![]() |
No ale mam wysyłać adres do kliknięcia z tym hashem w bazy? i jak ktoś kliknie i podany hash == hash z mejla + ziarno to zupdatować pole weryfikacji? Czy jak
|
|
|
![]()
Post
#6
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
To ja napiszę skrótowo jak zazwyczaj rozwiązuję... Daję adres email lub id czy ogólnie coś pozwalające mi na identyfikację (choćby login) i dla niego generuję hash. Mam osobną tabelę, nazwijmy ją poczekalnia, i do niej władowuję wszelkie takie "zapytania". W zależności od działań, może to być powiązane z nowym hasłem, aktywacją czegoś lub co nam się żyw dusza nie podoba. Gdy przyjdzie do nas linkiem odpowiedni hash, sprawdzamy czego i kogo tyczy oraz odpowiednio postępujemy (określone procedury, metody, zależne od określonych pól w rekordzie), a jednocześnie usuwamy z poczekalni wszystkie hashe tyczące tego określonego zadania (user mógł kilka razy tę procedurę wykonać co stworzy wielokrotne hashe) i usera.
Ten post edytował thek 29.10.2009, 01:51:54 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 2 592 Pomógł: 445 Dołączył: 12.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
No ale mam wysyłać adres do kliknięcia z tym hashem w bazy? i jak ktoś kliknie i podany hash == hash z mejla + ziarno to zupdatować pole weryfikacji? Czy jak Tak, wysyłasz do użytkownika link do skryptu sprawdzającego: http://TwojSerwer.pl/validate.php?email=te...sdfad98adf9a8df W skrypcie odbierasz po prostu zmienne $_GET['email'] oraz $_GET['hash'], konstruujesz zapytanie, i patrzysz czy zwróciło wynik czy nie |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 11:53 |