• 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?

VPS Starter Arubacloud
0 głosów
521 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,490 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,438 wizyt
pytanie zadane 11 marca 2018 w C i C++ przez Jakub 0 Pasjonat (23,120 p.)
0 głosów
0 odpowiedzi 415 wizyt
pytanie zadane 14 marca 2017 w C# przez PejtaM Użytkownik (550 p.)
0 głosów
2 odpowiedzi 422 wizyt
pytanie zadane 9 października 2016 w C i C++ przez Shiro Stary wyjadacz (10,300 p.)

93,008 zapytań

141,975 odpowiedzi

321,256 komentarzy

62,350 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

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...