Wpis z mikrobloga

#webdev Witajcie, mam pytanie i proszę o szczere porady.
Robię formularz rejestracyjny, który wysyła dane ajaxem. Walidacja po stronie serwera i klienta zapewniona. Mam tylko obawy o spam. Po zakończeniu rejestracji robie remove przycisku przy pomocy JS'a. Właściwie to formularz działa tylko gdy JS jest włączony (wyłączony JS nie jest brany pod uwagę). Czy słuszne obawy o spam mam? Czy powinienem zrobić jakąś JS'ową obsługę captchy? Czy ten sposób rejestracji jest karygodny?
  • 5
Czy słuszne obawy o spam mam?


@mg93: Tak, gówno włazi z każdy formularz jaki znajdzie. Ale odcięcie zwykłego form/submit na rzecza ajaxa odsiewa już te najprymitywniejsze roboty. Kolejne odstrzelisz prostą pseudocaptchą 2+2=4. A jak dalej będziesz miał dość to recaptcha itp.
@ppawel: dziękuje mireczku za wypowiedź. W jaki sposób zaimplementowałbyś tą captche matematyczną? Javascript ma wygenerować działanie czy działanie ma powstać w trakcie generowania formularza po stronie serwera?
@mg93: Po stronie serwera robisz równanie i zapisujesz wynik (np. w sesji). Pokazujesz równanie w formularzu, odbierasz $_POST['wynik'] i porównujesz z $_SESSION['wynik'].

Edit: srand() + 2x rand(0,100)
@mg93:
Ja bym na początku nie robił captchy. Dorobiłbym dopiero gdyby się okazało, że pojawia się spam. Po co psuć UX skoro może się okazać, że nie ma żadnego spamu. Za to warto generować po stronie serwera tzw nonce, w ten sposób na pewno odsiejesz mnóstwo botów (większość i tak już odsiałeś robiąc formularz AJAX-owo).