Vanilla
Ülevaade
Vanilla PHP on tavaline PHP-projekt ilma raamistikuta. See pakub puhast lähtepunkti lihtsate projektide jaoks, andes sulle täieliku kontrolli oma koodi struktuuri üle koos HTML-i, CSS-i, JavaScripti ja PHP-ga.
Kiirjuhend
Loo repositoorium mallist
Mine oma töölaual vahekaardile Tools & Deployment. Klõpsa nuppu "New Repository", vali rippmenüüst Vanilla PHP mall, sisesta repositooriumi nimi ja alamdomeen ning klõpsa "Create Repository".
Klooni oma repositoorium
git clone https://<git-server>/<username>/<repo-name>.git
cd <repo-name>
Seadista andmebaas (valikuline)
Kui kasutad MySQL-i, hangi oma andmebaasi sisselogimisandmed phpMyAdminist (link töölaual) ja uuenda oma PHP-failid:
$host = 'your-host';
$dbname = 'your-database';
$username = 'your-username';
$password = 'your-password';
Alusta arendamist
Muuda HTML-i, CSS-i, JavaScripti ja PHP-faile otse. Buildi sammu pole vaja!
Saada oma muudatused üles
git add .
git commit -m "Initial setup"
git push origin main
Kohalik arendus Dockeriga
Kui sul ei ole PHP-d kohalikult paigaldatud, saad kohaliku PHP-serveri käivitamiseks kasutada Dockerit. Projekt sisaldab Dockerfile'i koos PHP 8.2 ja Apache'iga.
Eeldused
Paigalda Docker Desktop oma operatsioonisüsteemi jaoks (Windows, Mac või Linux).
Käivitamine Dockeriga
# Ehita ja käivita konteiner
docker build -t my-php-app .
docker run -p 8080:80 -v $(pwd):/var/www/html my-php-app
# Või kasuta arenduseks kiiret üherealist käsku
docker run --rm -p 8080:80 -v $(pwd):/var/www/html php:8.2-apache
Ava brauseris http://localhost:8080.
Projekti struktuur
Failide asukohtade mõistmine:
├── index.php # Peamine sisendpunkt
├── css/
│ └── style.css # Stiililehed
├── js/
│ └── script.js # JavaScripti failid
├── includes/
│ ├── config.php # Andmebaasi seadistus
│ ├── header.php # Taaskasutatav päis
│ └── footer.php # Taaskasutatav jalus
├── images/ # Pildiressursid
├── Dockerfile # Dockeri ehitamise seadistus
└── README.md # Projekti dokumentatsioon
Levinud ülesanded
Andmebaasiühendus PDO-ga
Loo taaskasutatav andmebaasiühendus:
<?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());
}
?>
Andmebaasi päringud
Kasuta turvaliste päringute jaoks ettevalmistatud avaldusi:
<?php
// SELECT päring
$stmt = $pdo->prepare("SELECT * FROM users WHERE id = ?");
$stmt->execute([$userId]);
$user = $stmt->fetch(PDO::FETCH_ASSOC);
// INSERT päring
$stmt = $pdo->prepare("INSERT INTO users (name, email) VALUES (?, ?)");
$stmt->execute([$name, $email]);
?>
Failide kaasamine
Taaskasuta koodi erinevatel lehtedel:
<?php
include 'includes/header.php';
// Sinu lehe sisu siia
include 'includes/footer.php';
?>
Vormiandmete käitlemine
Töötle POST-päringuid turvaliselt:
<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$name = htmlspecialchars($_POST['name'] ?? '');
$email = filter_var($_POST['email'] ?? '', FILTER_SANITIZE_EMAIL);
// Töötle andmeid...
}
?>
Põhitehnoloogiad
PHP 8.2
Serveripoolne skriptimine kaasaegsete PHP-funktsioonide ja MySQL/PDO toega.
HTML5
Struktureeri oma veebilehed semantiliste HTML-elementidega.
CSS3
Stiili oma lehti kaasaegsete CSS-funktsioonidega nagu Flexbox ja Grid.
JavaScript
Lisa interaktiivsust puhta JavaScriptiga - teeke pole vaja.
Tõrkeotsing
Andmebaasiühendus ebaõnnestus
Põhjus: Valed andmebaasi sisselogimisandmed või andmebaas pole kättesaadav.
Lahendus: Kontrolli oma sisselogimisandmeid phpMyAdminis (link töölaual). Veendu, et host, andmebaasi nimi, kasutajanimi ja parool on õiged.
PHP vead ei ilmu
Põhjus: Vigade teatamine on välja lülitatud.
Lahendus: Lisa oma PHP-faili algusesse: ini_set('display_errors', 1); error_reporting(E_ALL);
Tühi valge leht
Põhjus: PHP fataalne viga koos välja lülitatud vigade teatamisega.
Lahendus: Luba vigade teatamine (vaata eespool) või kontrolli serverilogisid. Levinumad põhjused: süntaksivead, puuduvad failid või määratlemata funktsioonid.
CSS/JS ei laadi
Põhjus: Valed failiteed.
Lahendus: Kasuta oma HTML-failist suhtelisi teid: href="css/style.css" või absoluutseid teid: href="/css/style.css"
Vormiandmed ei jõua kohale
Põhjus: Vormi meetod või tegevus on vale.
Lahendus: Veendu, et sinu vormil on method="POST" ja õige action atribuut, mis viitab sinu PHP-failile.
Juurutamise töövoog
Iga kord, kui saadad koodi Giti, juurutatakse sinu rakendus automaatselt:
Sinu juurutatud rakenduse URL järgib seda formaati:
https://<your-subdomain>-<repo-name>.<session-domain>
Näide: https://student01-module-a.demo.nstrim.app