Vanilla
Apžvalga
Vanilla PHP yra paprastas PHP projektas be jokio karkaso. Jis suteikia švarų atspirties tašką paprastiems projektams, leisdamas pilnai valdyti kodo struktūrą su HTML, CSS, JavaScript ir PHP.
Greitas startas
Sukurkite repozitoriją iš šablono
Valdymo skydelyje pereikite į skirtuką Tools & Deployment. Spauskite mygtuką "New Repository", išskleidžiamame sąraše pasirinkite Vanilla PHP šabloną, įveskite repozitorijos pavadinimą ir subdomeną, tada spauskite "Create Repository".
Klonuokite savo repozitoriją
git clone https://<git-server>/<username>/<repo-name>.git
cd <repo-name>
Sukonfigūruokite duomenų bazę (neprivaloma)
Jei naudojate MySQL, gaukite duomenų bazės prisijungimo duomenis iš phpMyAdmin (nuoroda valdymo skydelyje) ir atnaujinkite savo PHP failus:
$host = 'your-host';
$dbname = 'your-database';
$username = 'your-username';
$password = 'your-password';
Pradėkite kurti
Redaguokite HTML, CSS, JavaScript ir PHP failus tiesiogiai. Jokio kompiliavimo žingsnio nereikia!
Įkelkite savo pakeitimus
git add .
git commit -m "Initial setup"
git push origin main
Vietinis kūrimas su Docker
Jei vietoje neturite įdiegto PHP, galite naudoti Docker vietiniam PHP serveriui paleisti. Projekte yra Dockerfile su PHP 8.2 ir Apache.
Reikalavimai
Įdiekite Docker Desktop savo operacinei sistemai (Windows, Mac arba Linux).
Paleidimas su Docker
# Sukompiliuoti ir paleisti konteinerį
docker build -t my-php-app .
docker run -p 8080:80 -v $(pwd):/var/www/html my-php-app
# Arba naudokite greitą vienos eilutės komandą kūrimui
docker run --rm -p 8080:80 -v $(pwd):/var/www/html php:8.2-apache
Naršyklėje atidarykite http://localhost:8080.
Projekto struktūra
Kur yra failai:
├── index.php # Pagrindinis įėjimo taškas
├── css/
│ └── style.css # Stiliai
├── js/
│ └── script.js # JavaScript failai
├── includes/
│ ├── config.php # Duomenų bazės konfigūracija
│ ├── header.php # Daugkartinis antraštės failas
│ └── footer.php # Daugkartinis poraštės failas
├── images/ # Paveikslėlių resursai
├── Dockerfile # Docker kompiliavimo konfigūracija
└── README.md # Projekto dokumentacija
Įprastos užduotys
Prisijungimas prie duomenų bazės su PDO
Sukurkite daugkartinį duomenų bazės prisijungimą:
<?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());
}
?>
Užklausos į duomenų bazę
Naudokite paruoštus pareiškimus saugioms užklausoms:
<?php
// SELECT užklausa
$stmt = $pdo->prepare("SELECT * FROM users WHERE id = ?");
$stmt->execute([$userId]);
$user = $stmt->fetch(PDO::FETCH_ASSOC);
// INSERT užklausa
$stmt = $pdo->prepare("INSERT INTO users (name, email) VALUES (?, ?)");
$stmt->execute([$name, $email]);
?>
Failų įtraukimas
Pakartotinai naudokite kodą įvairiuose puslapiuose:
<?php
include 'includes/header.php';
// Jūsų puslapio turinys čia
include 'includes/footer.php';
?>
Formos duomenų tvarkymas
Saugiai apdorokite POST užklausas:
<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$name = htmlspecialchars($_POST['name'] ?? '');
$email = filter_var($_POST['email'] ?? '', FILTER_SANITIZE_EMAIL);
// Apdoroti duomenis...
}
?>
Pagrindinės technologijos
PHP 8.2
Serverio pusės skriptavimas su moderniomis PHP funkcijomis ir MySQL/PDO palaikymu.
HTML5
Strukturizuokite savo žiniatinklio puslapius su semantiniais HTML elementais.
CSS3
Stilizuokite savo puslapius su moderniomis CSS funkcijomis, tokiomis kaip Flexbox ir Grid.
JavaScript
Pridėkite interaktyvumo su paprastu JavaScript - jokių bibliotekų nereikia.
Trikčių šalinimas
Nepavyko prisijungti prie duomenų bazės
Priežastis: Neteisingi duomenų bazės prisijungimo duomenys arba duomenų bazė nepasiekiama.
Sprendimas: Patikrinkite prisijungimo duomenis phpMyAdmin (nuoroda valdymo skydelyje). Įsitikinkite, kad serveris, duomenų bazės pavadinimas, vartotojo vardas ir slaptažodis yra teisingi.
PHP klaidos nerodomos
Priežastis: Klaidų ataskaitos išjungtos.
Sprendimas: PHP failo viršuje pridėkite: ini_set('display_errors', 1); error_reporting(E_ALL);
Tuščias baltas puslapis
Priežastis: PHP lemtinga klaida su išjungtomis klaidų ataskaitomis.
Sprendimas: Įjunkite klaidų ataskaitas (žr. aukščiau) arba patikrinkite serverio žurnalus. Dažnos priežastys: sintaksės klaidos, trūkstantys failai arba neapibrėžtos funkcijos.
CSS / JS neįsikrauna
Priežastis: Neteisingi failų keliai.
Sprendimas: Naudokite santykinius kelius nuo savo HTML failo: href="css/style.css" arba absoliučius kelius: href="/css/style.css"
Formos duomenys negaunami
Priežastis: Neteisingas formos metodas arba veiksmas.
Sprendimas: Įsitikinkite, kad jūsų forma turi method="POST" ir teisingą action atributą, nukreiptą į jūsų PHP failą.
Diegimo eiga
Kiekvieną kartą, kai įkeliate kodą į Git, jūsų aplikacija automatiškai įdiegiama:
Jūsų įdiegtos aplikacijos URL atitinka šį formatą:
https://<your-subdomain>-<repo-name>.<session-domain>
Pavyzdys: https://student01-module-a.demo.nstrim.app