• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Jak rozróżnić, kiedy lepiej użyć PHP, a kiedy JS?

Object Storage Arubacloud
0 głosów
380 wizyt
pytanie zadane 10 listopada 2017 w PHP przez fanpajny Obywatel (1,610 p.)
Cześć, Jak rozróżnić kiedy lepiej użyć PHP, a kiedy lepiej jest użyć JS? Na przykład: plik cookie możemy ustawić(oraz nim zarządzać) zarówno w PHP jak i w JavaScript. Jeżeli używam obu języków w projekcie, to w którym lepiej byłoby to zrobić? I nie tylko to, bo jest trochę innych funkcjonalności którymi można zarządzać i zarówno z PHP jak  i z JS. Czy po prostu tworzę na siłę taki problem? Mam nadzieję, że w miarę jasno sprecyzowałem mój dylemat.
1
komentarz 10 listopada 2017 przez niezalogowany
W PHP jest tam gdzie nie możesz wierzyć użytkownikowi, wynik tego co on poda może być szkodliwy dla całej aplikacji, a więc np nie ufasz mu jeżeli chodzi o poprawność wypełnionych pól, które mogą później prowadzić do np sqli.

JS to wszystko inne, a więc jeżeli user coś zepsuje to krzywda stanie się tylko lokalnie u niego na komputerze. JS odnosi się do czynności które wykonują się w kontekście przegladarki

Fajnie by było gdyby jakiś spec w razie czego mnie poprawił ;)
komentarz 10 listopada 2017 przez CzikaCarry Szeryf (75,340 p.)
Nie jestem specem, ale raczej nie ma tu co poprawiać. Nigdy nie należy "wierzyć" danym wysłanym przez użytkownika do serwera PHP, może on zrobić dosłownie wszystko, od jakiś xss'ów, przez zmianę pól w formularzu, sqli czy po prostu napisanie własnego skryptu JS który "będzie udawał" twój skrypt, a może wyrządzić szkody. Np. Nie ma sensu pobierać z PHP aktualnej godziny i wysyłać co sekundę do JS, jeśli użytkownik będzie chciał kombinować, to co najwyżej u niego coś nie będzie trybić, u innych będzie w porządku. Jeśli robisz jakaś ruletkę, to trzymanie logiki całej tej ruletki i wysyłanie wyników (np. Wylosowanego pola) przez JS do PHP jest strzałem w stopę, zresztą zasłużonym.

1 odpowiedź

0 głosów
odpowiedź 10 listopada 2017 przez Tomek Sochacki Ekspert (227,510 p.)
Jeśli to początek nauki to proponuję takie robocze rozróżnienie:

JS = front-end, czyli użytkownik (przeglądarka)

PHP = back-end, czyli serwer.

Na przykład robisz formularz kontaktowy, to w JS warto zrobić jakąś prostą walidację i np. zabezpieczyć się, że jeśli user nie wypełni wskazanych pól to nie puścisz na serwer submita (poczytaj o preventDefault()). Walidację JS można zmienić poprzez ingerencję z skrypt, ale tutaj służy to wyłącznie eleganckiemu obsłużeniu ewentualnych błędów usera, np. gdy nie poda emaila to daj ładne info o jego braku. Gdy wsio jest oki to robisz sumbit i wchodzisz w PHP. Tutaj robisz właściwą walidację (zawsze o tym pamiętaj pobierając dane od usera) i następnie np. dodajesz coś do bazy, wysyłasz e-maila itp.

Co do ciasteczek to wszystko zależy w jakim celu je tworzysz. Poczytaj sobie również np. o localStorage vs cookies. API localStorage jest bardzo proste dlatego polecam to już na początku nauki, żebyś ograniczał cookies i nie nadużywał ich.

Zrób sobie z 1-2 stronki np. coś w stylu wizytówki firmowej + formularz kontaktowych z ajax, pobaw się animacjami (CSS, CSS+JS) itp. Myślę, że po 1-2 stronkach sam już odpowiesz sobie na Twoje pytanie :)

A z biegiem czasu pewnie wejdziesz w React czy Angular, a może i node.js i przekonasz się, że JS to potężne "narzędzie" :)

Podobne pytania

+2 głosów
1 odpowiedź 1,249 wizyt
pytanie zadane 11 marca 2018 w C i C++ przez Jakub 0 Pasjonat (23,120 p.)
0 głosów
0 odpowiedzi 348 wizyt
pytanie zadane 14 marca 2017 w C# przez PejtaM Użytkownik (550 p.)
0 głosów
2 odpowiedzi 341 wizyt
pytanie zadane 9 października 2016 w C i C++ przez Shiro Stary wyjadacz (10,300 p.)

92,570 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,958 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...