Autor Wątek: Walidacja po stronie serwera i klienta ? PHP i JS ?  (Przeczytany 1087 razy)

Offline LizarD

  • Użytkownik

# Maj 26, 2017, 12:07:41
Witam!

Czy w przypadku logowania do strony powinienem sprawdzać poprawność danych jeżeli wysyłam login i hasło POST'em i sprawdzam to JavaScript'em  przed wysłaniem ? Chodzi mi o długość, poprawność... przeprowadzaniem walidacji

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline .c41x

  • Użytkownik
    • homepage

# Maj 26, 2017, 12:22:35
Zazwyczaj robi się po obu stronach niezależnie (tzn. JS sprawdza poprawność bez komunikacji z serwerem), choć to zależy od konkretnego przypadku.

Offline LizarD

  • Użytkownik

# Maj 26, 2017, 12:32:00
Można dokładniej ? A checkbox'a do sprawdzania zaakceptowania regulaminu jesr sens sprawdzac w php ?

Offline .c41x

  • Użytkownik
    • homepage

# Maj 26, 2017, 17:07:35
Jak najbardziej jest sens. Od strony klienta można wysłać dowolne zapytanie na serwer omijając "zabezpieczenie". IMO przerzucanie (ważnej) logiki z serwera na klienta to błąd projektowy. Sam musisz odpowiedzieć sobie które funkcjonalności muszą być oprogramowane po stronie serwera, po obu stronach i tylko po stronie klienta.

Offline FrozenShade

  • Użytkownik
    • Skullstone's official site

# Maj 26, 2017, 17:46:57
Nie istnieje coś takiego jak walidacja po stronie klienta :)
Wszystko to, co ci przychodzi do serwera z zewnątrz powinno być sprawdzone na wszelkie możliwe sposoby. Zakładaj najgorszy scenariusz, czyli taki, że po drugiej stronie połączenia nie ma twojego klienta, tylko masz kogoś złośliwego, kto chce cie oszukać.

Offline lethern

  • Użytkownik

# Maj 26, 2017, 17:58:01
Cytuj
A checkbox'a do sprawdzania zaakceptowania regulaminu jesr sens sprawdzac w php
akurat to idealny przykład czegoś, czego nie ma sensu sprawdzać po stronie serwera.. i chyba jedyny ;p
(w końcu, po pierwsze, checkboxów nie sprawdzasz pod kątem poprawności (do bazy idzie 1 lub 0), a po drugie, do bazy nie zapisujesz czy ktoś zaakceptował regulamin)
« Ostatnia zmiana: Maj 26, 2017, 18:01:54 wysłana przez lethern »

Offline koirat

  • Użytkownik

# Maj 26, 2017, 22:15:46
Nie istnieje coś takiego jak walidacja po stronie klienta :)

Niewiem na ile żartujesz, ale oczywiście jest coś takiego jak validacja po stronie klienta (nie wprowadzaj ludzi w błąd).

Naturalnie i tak należy zrobić validacje po stronie serwera.

Offline maro

  • Użytkownik

# Maj 27, 2017, 00:14:20
Cytuj
akurat to idealny przykład czegoś, czego nie ma sensu sprawdzać po stronie serwera..
Uważam, że ma sens, bo z prawnego punktu widzenia jest to oświadczenie woli. W ten sposób masz potwierdzenie, że ktoś np. zobowiązał się do przestrzegania regulaminu (a nie przypadkowo wysłał formularz z przeglądarki z wyłączonym js-em).

Offline FrozenShade

  • Użytkownik
    • Skullstone's official site

# Maj 27, 2017, 19:58:31
Niewiem na ile żartujesz, ale oczywiście jest coś takiego jak validacja po stronie klienta (nie wprowadzaj ludzi w błąd).

Trochę żartuję i generalnie to jest, ale jak się pisze kod server-side to trzeba pisać tak, jak by tej walidacji nie było ;)