Przegląd

Vanilla PHP to czysty projekt PHP bez żadnego frameworka. Stanowi prosty punkt startowy dla niewielkich projektów, dając ci pełną kontrolę nad strukturą kodu z HTML, CSS, JavaScript i PHP.

Zanim zaczniesz
Upewnij się, że masz otwarty pulpit – będą ci potrzebne wyświetlone tam dane logowania do Git. Ten szablon zawiera PHP z obsługą MySQL/PDO przez Apache.

Pierwsze kroki

1

Utwórz repozytorium z szablonu

Na pulpicie przejdź do zakładki Tools & Deployment. Kliknij przycisk "New Repository", wybierz szablon Vanilla PHP z listy rozwijanej, wpisz nazwę repozytorium i subdomenę, a następnie kliknij "Create Repository".

2

Sklonuj repozytorium

git clone https://<git-server>/<username>/<repo-name>.git
cd <repo-name>
3

Skonfiguruj bazę danych (opcjonalnie)

Jeśli używasz MySQL, pobierz dane logowania do bazy z phpMyAdmin (link na pulpicie) i zaktualizuj swoje pliki PHP:

$host = 'your-host';
$dbname = 'your-database';
$username = 'your-username';
$password = 'your-password';
4

Zacznij rozwijać

Edytuj pliki HTML, CSS, JavaScript i PHP bezpośrednio. Bez kroku buildu!

5

Wypchnij swoje zmiany

git add .
git commit -m "Initial setup"
git push origin main
Każde wypchnięcie do Git automatycznie wdraża twoją aplikację. Sprawdź adres Module Work URL na pulpicie, aby zobaczyć działającą stronę.

Lokalny rozwój z Dockerem

Jeśli nie masz lokalnie zainstalowanego PHP, możesz użyć Dockera do uruchomienia lokalnego serwera PHP. Projekt zawiera Dockerfile z PHP 8.2 i Apache.

Czym jest Docker?
Docker tworzy izolowane "kontenery" zawierające całe potrzebne oprogramowanie (PHP, Apache, rozszerzenia MySQL) bez instalowania go na twoim komputerze. Można to porównać do lekkiej maszyny wirtualnej.

Wymagania wstępne

Zainstaluj Docker Desktop dla swojego systemu operacyjnego (Windows, Mac lub Linux).

Uruchamianie z Dockerem

# Zbuduj i uruchom kontener
docker build -t my-php-app .
docker run -p 8080:80 -v $(pwd):/var/www/html my-php-app

# Lub użyj szybkiej jednolinijkowej komendy do rozwoju
docker run --rm -p 8080:80 -v $(pwd):/var/www/html php:8.2-apache

Otwórz http://localhost:8080 w przeglądarce.

Uwaga
Docker jest opcjonalny dla lokalnego rozwoju. Platforma NStrim obsługuje wdrożenie automatycznie – Docker jest potrzebny tylko, jeśli chcesz uruchamiać PHP lokalnie bez jego instalowania.

Struktura projektu

Gdzie znajdują się pliki:

├── index.php             # Główny punkt wejścia
├── css/
│   └── style.css         # Arkusze stylów
├── js/
│   └── script.js         # Pliki JavaScript
├── includes/
│   ├── config.php        # Konfiguracja bazy danych
│   ├── header.php        # Wielokrotnie używany nagłówek
│   └── footer.php        # Wielokrotnie używana stopka
├── images/               # Zasoby graficzne
├── Dockerfile            # Konfiguracja buildu Docker
└── README.md             # Dokumentacja projektu
        

Typowe zadania

Połączenie z bazą danych przez PDO

Utwórz wielokrotnie używane połączenie z bazą:

<?php
$host = 'localhost';
$dbname = 'database_name';
$username = 'username';
$password = 'password';

try {
    $pdo = new PDO("mysql:host=$host;dbname=$dbname", $username, $password);
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
    die("Connection failed: " . $e->getMessage());
}
?>

Zapytania do bazy danych

Używaj prepared statements dla bezpiecznych zapytań:

<?php
// Zapytanie SELECT
$stmt = $pdo->prepare("SELECT * FROM users WHERE id = ?");
$stmt->execute([$userId]);
$user = $stmt->fetch(PDO::FETCH_ASSOC);

// Zapytanie INSERT
$stmt = $pdo->prepare("INSERT INTO users (name, email) VALUES (?, ?)");
$stmt->execute([$name, $email]);
?>

Dołączanie plików

Wielokrotnie używaj kodu między stronami:

<?php
include 'includes/header.php';
// Tutaj zawartość twojej strony
include 'includes/footer.php';
?>

Obsługa danych formularza

Bezpiecznie przetwarzaj żądania POST:

<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $name = htmlspecialchars($_POST['name'] ?? '');
    $email = filter_var($_POST['email'] ?? '', FILTER_SANITIZE_EMAIL);

    // Przetwarzanie danych...
}
?>

Kluczowe technologie

PHP 8.2

Skryptowanie po stronie serwera z nowoczesnymi funkcjami PHP i obsługą MySQL/PDO.

HTML5

Buduj strukturę stron internetowych za pomocą semantycznych elementów HTML.

CSS3

Stylizuj swoje strony nowoczesnymi funkcjami CSS, takimi jak Flexbox i Grid.

JavaScript

Dodaj interaktywność za pomocą czystego JavaScript – bez bibliotek.

Rozwiązywanie problemów

Połączenie z bazą danych nie powiodło się

Przyczyna: Nieprawidłowe dane logowania do bazy lub baza danych jest niedostępna.

Rozwiązanie: Sprawdź swoje dane w phpMyAdmin (link na pulpicie). Upewnij się, że host, nazwa bazy, nazwa użytkownika i hasło są poprawne.

Błędy PHP nie są wyświetlane

Przyczyna: Raportowanie błędów jest wyłączone.

Rozwiązanie: Dodaj na początku swojego pliku PHP: ini_set('display_errors', 1); error_reporting(E_ALL);

Pusta biała strona

Przyczyna: Krytyczny błąd PHP przy wyłączonym raportowaniu błędów.

Rozwiązanie: Włącz raportowanie błędów (zobacz wyżej) lub sprawdź logi serwera. Typowe przyczyny: błędy składni, brakujące pliki lub niezdefiniowane funkcje.

CSS/JS się nie ładuje

Przyczyna: Nieprawidłowe ścieżki plików.

Rozwiązanie: Używaj ścieżek względnych względem twojego pliku HTML: href="css/style.css" lub bezwzględnych: href="/css/style.css"

Dane formularza nie są odbierane

Przyczyna: Nieprawidłowa metoda lub akcja formularza.

Rozwiązanie: Upewnij się, że twój formularz ma method="POST" oraz prawidłowy atrybut action wskazujący na twój plik PHP.

Proces wdrażania

Za każdym razem, gdy wypychasz kod do Git, twoja aplikacja jest automatycznie wdrażana:

Zmiana kodu git push Wdrożenie na Apache Live!

Adres URL twojej wdrożonej aplikacji ma następujący format:

https://<your-subdomain>-<repo-name>.<session-domain>

Przykład: https://student01-module-a.demo.nstrim.app

Aby uzyskać więcej informacji, odwiedź Dokumentację PHP oraz MDN Web Docs.