Klasa 2 · rozdział 1
PHP na serwerze i środowisko pracy
W klasie 1 skrypt działał w przeglądarce. Teraz przeglądarka prosi serwer o stronę, PHP wykonuje się na serwerze, a Ty dostajesz już gotowy HTML. Pojęcia takie jak serwer, Apache i PHP są też w słowniczku.
Po tym rozdziale powinieneś umieć
- powiedzieć, że PHP działa po stronie serwera, a JavaScript — w przeglądarce;
- wymienić role Apache, PHP i MySQL;
- uruchomić XAMPP i otworzyć stronę przez
http://; - wskazać katalog serwera i umieścić w nim plik
.php; - wyświetlić konfigurację przez
phpinfo(); - odróżnić kod PHP od HTML i od JavaScriptu.
1. PHP jako język serwera
PHP (oryginalnie Personal Home Page, dziś PHP: Hypertext Preprocessor)
to skryptowy język programowania wykonywany na serwerze. Zapisujesz plik
.php. Serwer WWW (u nas Apache) rozpoznaje rozszerzenie, uruchamia interpreter PHP
i odsyła do przeglądarki wynik — zwykle HTML.
Przeglądarka nie widzi Twojego kodu PHP. W DevTools, na karcie Elements,
jest już tylko to, co echo i znaczniki HTML wyprodukowały. To odwrotność JavaScriptu
z klasy 1: tam źródło skryptu dało się podejrzeć u klienta.
http://localhost/cwiczenia-php/witaj.php).
Apache znajduje plik, PHP go wykonuje, serwer odsyła HTML. Ty w pasku adresu zawsze używasz
http://, nigdy ikony pliku z pulpitu.
2. PHP a JavaScript z klasy 1
Oba języki są skryptowe i oba pojawiają się przy stronach WWW. Różni je miejsce wykonania i typowe zadanie.
| JavaScript (klasa 1) | PHP (klasa 2) | |
|---|---|---|
| Gdzie się wykonuje | Przeglądarka (klient) | Serwer |
| Plik | .js albo znacznik <script> |
.php |
| Jak uruchamiasz | Otwierasz HTML w przeglądarce | Otwierasz adres HTTP (Apache musi działać) |
| Co widzi użytkownik | Może podejrzeć kod JS w DevTools | Widzi wynik HTML, nie źródło PHP |
| Typowe zadanie | Kliknięcie, zmiana treści, walidacja w przeglądarce | Zapis do bazy, logowanie, wygenerowanie strony |
| Zmienna | let imie = "Ania"; |
$imie = "Ania"; |
| Wypisanie | console.log, DOM |
echo (tekst trafia do HTML) |
3. Apache, PHP i MySQL
Lokalnie nie stawiasz trzech programów osobno „z palca”. Pakiet XAMPP instaluje stos: serwer WWW, interpreter PHP i bazę danych. Każdy element ma inną rolę.
Apache
Serwer HTTP. Przyjmuje żądanie z przeglądarki, znajduje plik w katalogu serwera,
przy .php oddaje go interpreterowi, odsyła odpowiedź.
PHP
Interpreter języka. Czyta Twój skrypt i wykonuje go. Sam z siebie nie „słucha” portu 80 — robi to Apache.
MySQL to serwer bazy danych (w XAMPP jest w pakiecie). Na początku roku wystarczy wiedzieć, że jest i że podglądasz tabele w phpMyAdmin. Zapytania z PHP (PDO) przyjdą później.
http://localhost/phpmyadmin. Na razie uruchomienie i pewność, że się otwiera.
4. XAMPP
Na sali i w domu na tych zajęciach używamy XAMPP. Domyślna instalacja:
C:\xampp. Katalog stron (document root) to C:\xampp\htdocs.
Serwisy włączasz w panelu sterowania XAMPP: Start przy Apache oraz — gdy będzie baza —
przy MySQL.
Start
- Uruchom XAMPP Control Panel.
- Przy Apache kliknij Start (status zmienia się na zielony).
- Pliki stron kładziesz w
C:\xampp\htdocs\…. -
Adres w przeglądarce:
http://localhost/nazwa-folderu/plik.php. Przykład: plikC:\xampp\htdocs\cwiczenia-php\witaj.phptohttp://localhost/cwiczenia-php/witaj.php.
C:\laragon\www, przycisk Start All).
Zasada jest ta sama: plik PHP otwierasz przez http://, nigdy dwuklikiem.
Na lekcjach i w poleceniach ćwiczeń obowiązuje XAMPP.
witaj.php jak dokument z dysku, w adresie pojawi się file://.
Przeglądarka pokaże surowy tekst albo pusto — Apache i PHP w ogóle nie wezmą udziału.
Zawsze sprawdzaj, czy pasek zaczyna się od http://.
5. Katalog serwera, konfiguracja i phpinfo
Katalog serwera (document root) to folder, z którego Apache serwuje pliki.
W XAMPP: C:\xampp\htdocs. Podfolder cwiczenia-php ma adres
http://localhost/cwiczenia-php/.
Pierwszy plik, np. witaj.php:
<!DOCTYPE html>
<html lang="pl">
<body>
<?php
echo "Witaj na serwerze";
?>
</body>
</html>
W przeglądarce widzisz napis. W źródle strony (Ctrl+U) nie ma <?php —
jest już tylko tekst i HTML.
phpinfo()
Funkcja wbudowana. Wypisuje wersję PHP, załadowane rozszerzenia, ścieżkę do pliku konfiguracyjnego
php.ini i dziesiątki ustawień. Na start używasz jej jako testu: jeśli widzisz
wielką fioletową tabelę, interpreter działa.
<?php
phpinfo();
Konfiguracja PHP
Ustawienia leżą w php.ini (w XAMPP zwykle C:\xampp\php\php.ini;
w panelu: Apache → Config → PHP).
Na razie nie musisz nic zmieniać. W phpinfo znajdziesz m.in.:
- Loaded Configuration File — który
php.inijest w użyciu; - error_reporting / display_errors — czy błędy widać na stronie (na sali zwykle tak; na publicznym serwerze szczegóły się ukrywa);
- wersję PHP (np. 8.x).
Po zmianie php.ini trzeba zrestartować Apache (w panelu XAMPP: Stop, potem Start).
- XAMPP włączony (Apache działa).
- Pliki zapisane w katalogu serwera, nie na pulpicie „obok”.
- Adres to
http://…, strona się odświeżyła. - W przeglądarce widać wynik, a nie surowy kod PHP.
- Gdy będzie baza: MySQL działa, phpMyAdmin się otwiera (na razie jako sprawdzenie stosu).
Ćwiczenia do samodzielnego wykonania
Folder roboczy: C:\xampp\htdocs\cwiczenia-php.
Nie trzymaj ćwiczeń wewnątrz folderu tego podręcznika.
Ćwiczenie 1. Serwer działa łatwe
- Włącz Apache w panelu XAMPP.
- Otwórz
http://localhost/. Powinna pojawić się strona startowa pakietu albo lista katalogów. - Otwórz phpMyAdmin. Nie musisz nic klikać w bazie — wystarczy, że strona się ładuje.
Ćwiczenie 2. phpinfo łatwe
Utwórz info.php z samym phpinfo();. Otwórz go przez HTTP.
Odszukaj wersję PHP i wiersz Loaded Configuration File. Zapisz obie informacje w notatki.txt.
Ćwiczenie 3. Pierwszy echo łatwe
Plik witaj.php: poprawny szkielet HTML oraz blok PHP, który wypisuje Twoje imię i klasę.
Sprawdź w źródle strony (Ctrl+U), że nie widać <?php.
Ćwiczenie 4. Zły sposób uruchomienia średnie
Świadomie otwórz ten sam witaj.php z dysku (dwuklik). Porównaj pasek adresu i wygląd
z wersją http://. W notatkach jednym zdaniem opisz różnicę.
Ćwiczenie 5. Mapa stosu średnie
W notatkach dopasuj: Apache / PHP / MySQL / VS Code / przeglądarka do zdań: „wykonuje skrypt”, „serwuje pliki HTTP”, „przechowuje tabele”, „tu piszę kod”, „tu widzę wynik”.
Ćwiczenie 6. PHP a JS trudne
Dwa krótkie akapity własnymi słowami: (1) czego przeglądarka nigdy nie zobaczy z pliku PHP; (2) po co nadal potrzebny jest JavaScript, skoro jest PHP. Nie kopiuj tabeli z rozdziału.
Sprawdź się
Wymagania na ocenę
Ocena wyższa zawiera wymagania na oceny niższe. Dotyczy środowiska i wstępu do PHP.
| Ocena | Uczeń |
|---|---|
| 2 | Wie, że PHP działa po stronie serwera. Uruchamia gotowy plik .php w środowisku lokalnym według wzoru. |
| 3 | Korzysta z XAMPP oraz phpMyAdmin na poziomie uruchomienia. |
| 4 | Opisuje rolę Apache, PHP i MySQL. Odróżnia kod PHP od HTML i JavaScriptu. |
| 5 | Dobiera środowisko do zadania. Wskazuje, co musi działać przy oddaniu pracy: serwer, pliki we właściwym katalogu, podgląd w przeglądarce. |
| 6 | Korzysta ze świadomej listy kontrolnej (katalog, serwer, baza gdy potrzebna, test przez HTTP). |