Piotr Majewski dzieli się swoim doświadczniem, pokazuje sposób na skuteczne zarządzanie adresami wypisanych osób. To wszystko bez łamania ustawy o ochronie danych osobowych. Zobacz jakie to łatwe!
Wdrażając postanowiłem dodać do niego system badający wartość przeciętnego czytelnika newslettera. W tym celu musiałem zapisywać adresy wszystkich osób, które się zapisały do moich newsletterów w osobnej bazie danych. Analiza danych z bazy ARP jest niemiarodajna, ponieważ bazę czyszczę z adresów osób, które zrezygnowały itd.
Ale jak trzymać adresy e-mail użytkowników, którzy się na to nie zgodzili nie łamiąc przy tym ustawy?
Jedno jest pewne - trzeba je trzymać bo inaczej nie jestem w stanie zidentyfikować kupującego.
Rozwiązanie jest prostsze niż myślałem. Stowrzyłem bazę danych, w której mam takie pola:
ID | email | polecajacy | AID | zamowione | kupione
ID - numer identyfikacyjny w bazie
email - adres e-mail klienta... ale skrócony za pomocą MD5
polecajacy - ID partnera cnebPoints
AID - identyfikator listy mailingowej
zamowione - data zamowienia
kupione - data zakupu
MD5 - to jest rozwiązanie problemu.
Za pomocą funkcji MD5() w PHP robię tzw. skrót adresu e-mail do 32 znaków.
Skrót ten jest nieodwracalny (są wzrozy matematyczne działające tylko w jendą stronę, jak logarytm). Skoro skrót jest nieodwracalny, to nie łamię prawa - nie jestem w stanie z niego odwtorzyć adresu e-mail.
Wystarczy zmienić jedną literkę w adresie e-mail, aby skrót wyszedł zupełnie inny. Skrótów może być bodajże: 9 472 710 129 612 967 086 019 848 437 700 000 000 (32 do potęgi 52) - przy takiej liczbie można założyć, że możliwość pojawienia się identycznego skrótu dla dwóch różnych maili jest pomijalna.
Jedziemy dalej. Gdy ktoś kupuje, mój skrypt zatwierdzający płatność robi rzecz następującą: