Wróć do: Teoria
średni teoria programowaniaklientserwermatura rozszerzona z informatyki

Kod po stronie klienta i serwera (JS vs PHP)

Podział pracy między przeglądarką a serwerem – co wykonuje JavaScript, co PHP i dlaczego walidacji nie wolno zostawiać klientowi.

01

Opis

Strona internetowa powstaje w dwóch miejscach naraz i podział ten decyduje o tym, co jest możliwe i co jest bezpieczne.

Kod po stronie serwera wykonuje się na maszynie, na której stoi strona – zanim cokolwiek trafi do przeglądarki. Ma dostęp do bazy danych i plików, a użytkownik nigdy nie widzi jego treści; dostaje wyłącznie wynik. Typowym przykładem jest PHP.

Kod po stronie klienta wykonuje przeglądarka na komputerze użytkownika. Odpowiada za interakcję: reakcję na kliknięcie, animacje, ukrywanie i pokazywanie elementów bez przeładowania strony. To domena JavaScriptu. Ten kod jest w całości widoczny dla każdego, kto otworzy podgląd źródła.

Z tej różnicy wynika najważniejsza konsekwencja praktyczna: kodowi po stronie klienta nie można ufać. Użytkownik może go podejrzeć, zmienić albo wyłączyć.

02

Porównanie

CechaSerwer (PHP)Klient (JavaScript)
Gdzie się wykonujena serwerzew przeglądarce
Widoczność koduukrytyw pełni widoczny
Dostęp do bazy danychtaknie bezpośrednio
Działa bez przeładowania stronynietak
Można wyłączyćnietak

Na maturze

Najczęściej pytane jest przypisanie języka do strony oraz to, który kod jest widoczny dla użytkownika. PHP to serwer, JavaScript to klient.

Kluczowy punkt merytoryczny dotyczy walidacji formularzy. Sprawdzanie danych w JavaScripcie poprawia wygodę, ale nie jest zabezpieczeniem – można je ominąć. Dane trzeba sprawdzić jeszcze raz na serwerze, bo tylko tam użytkownik nie ma wpływu na kod.

04

Zapamiętaj

  • PHP wykonuje się na serwerze, JavaScript w przeglądarce.
  • Kod PHP jest ukryty, kod JavaScript widoczny dla każdego.
  • Do bazy danych sięga kod serwerowy, nie klient.
  • Walidacja po stronie klienta to wygoda; prawdziwe sprawdzenie musi być na serwerze.
05

Najczęściej zadawane pytania

Dlaczego nie widzę kodu PHP w podglądzie źródła?

Bo wykonał się na serwerze, a do przeglądarki poszedł wyłącznie jego wynik w postaci HTML. Kod źródłowy nigdy nie opuszcza serwera.

Po co w ogóle sprawdzać dane w JavaScripcie?

Dla wygody użytkownika – natychmiastowy komunikat o błędzie jest przyjemniejszy niż przeładowanie strony. To dodatek do walidacji serwerowej, nie jej zamiennik.

Czy JavaScript działa tylko w przeglądarce?

Historycznie tak, ale istnieją środowiska pozwalające uruchamiać go również po stronie serwera. Na maturze obowiązuje jednak klasyczny podział.

Powiązane zagadnienia