Oversigt

Vanilla PHP er et almindeligt PHP-projekt uden noget framework. Det giver et rent udgangspunkt for simple projekter og giver dig fuld kontrol over kodestrukturen med HTML, CSS, JavaScript og PHP.

Før du begynder
Sørg for at have dit dashboard åbent - du skal bruge de Git-loginoplysninger, der vises der. Denne skabelon inkluderer PHP med MySQL/PDO-understøttelse via Apache.

Kom godt i gang

1

Opret repository fra skabelon

Gå til fanen Tools & Deployment på dit dashboard. Klik på "New Repository", vælg Vanilla PHP-skabelonen i dropdown-menuen, indtast et repository-navn og et subdomæne, og klik på "Create Repository".

2

Klon dit repository

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

Konfigurer database (valgfrit)

Hvis du bruger MySQL, så hent dine database-loginoplysninger fra phpMyAdmin (link på dashboardet) og opdater dine PHP-filer:

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

Begynd at udvikle

Rediger HTML-, CSS-, JavaScript- og PHP-filer direkte. Intet build-trin er påkrævet!

5

Push dine ændringer

git add .
git commit -m "Initial setup"
git push origin main
Hver push til Git udruller automatisk din applikation. Tjek din Module Work URL på dashboardet for at se din live-side.

Lokal udvikling med Docker

Hvis du ikke har PHP installeret lokalt, kan du bruge Docker til at køre en lokal PHP-server. Projektet indeholder en Dockerfile med PHP 8.2 og Apache.

Hvad er Docker?
Docker opretter isolerede "containere" med al den software, du har brug for (PHP, Apache, MySQL-extensions), uden at installere dem på din computer. Tænk på det som en letvægts virtuel maskine.

Forudsætninger

Installer Docker Desktop til dit operativsystem (Windows, Mac eller Linux).

Kør med Docker

# Build and run the container
docker build -t my-php-app .
docker run -p 8080:80 -v $(pwd):/var/www/html my-php-app

# Or use a quick one-liner for development
docker run --rm -p 8080:80 -v $(pwd):/var/www/html php:8.2-apache

Åbn http://localhost:8080 i din browser.

Bemærk
Docker er valgfrit til lokal udvikling. NStrim-platformen håndterer udrulning automatisk - du behøver kun Docker, hvis du vil køre PHP lokalt uden at installere det.

Projektstruktur

Forstå hvor filerne er placeret:

├── index.php             # Hoved-entry point
├── css/
│   └── style.css         # Stylesheets
├── js/
│   └── script.js         # JavaScript-filer
├── includes/
│   ├── config.php        # Databasekonfiguration
│   ├── header.php        # Genbrugelig header
│   └── footer.php        # Genbrugelig footer
├── images/               # Billed-assets
├── Dockerfile            # Docker build-konfiguration
└── README.md             # Projektdokumentation
        

Almindelige opgaver

Databaseforbindelse med PDO

Opret en genbrugelig databaseforbindelse:

<?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());
}
?>

Forespørgsler mod databasen

Brug prepared statements til sikre forespørgsler:

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

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

Inkludér filer

Genbrug kode på tværs af sider:

<?php
include 'includes/header.php';
// Your page content here
include 'includes/footer.php';
?>

Håndtering af formdata

Behandl POST-requests sikkert:

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

    // Process the data...
}
?>

Centrale teknologier

PHP 8.2

Server-side scripting med moderne PHP-funktioner og MySQL/PDO-understøttelse.

HTML5

Strukturér dine websider med semantiske HTML-elementer.

CSS3

Stil dine sider med moderne CSS-funktioner som Flexbox og Grid.

JavaScript

Tilføj interaktivitet med vanilla JavaScript - ingen biblioteker påkrævet.

Fejlfinding

Databaseforbindelse fejlede

Årsag: Forkerte database-loginoplysninger eller database utilgængelig.

Løsning: Tjek dine loginoplysninger i phpMyAdmin (link på dashboardet). Sørg for, at host, databasenavn, brugernavn og adgangskode er korrekte.

PHP-fejl vises ikke

Årsag: Fejlrapportering er deaktiveret.

Løsning: Tilføj i toppen af din PHP-fil: ini_set('display_errors', 1); error_reporting(E_ALL);

Tom hvid side

Årsag: Fatal PHP-fejl med fejlrapportering deaktiveret.

Løsning: Aktivér fejlrapportering (se ovenfor) eller tjek serverens logs. Almindelige årsager: syntaksfejl, manglende filer eller udefinerede funktioner.

CSS/JS indlæses ikke

Årsag: Forkerte filstier.

Løsning: Brug relative stier fra din HTML-fil: href="css/style.css" eller absolutte stier: href="/css/style.css"

Formdata modtages ikke

Årsag: Formularens method eller action er forkert.

Løsning: Sørg for, at din formular har method="POST" og den korrekte action-attribut, der peger på din PHP-fil.

Udrulnings-workflow

Hver gang du pusher kode til Git, udrulles din applikation automatisk:

Kodeændring git push Udrul til Apache Live!

Din udrullede applikations-URL har dette format:

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

Eksempel: https://student01-module-a.demo.nstrim.app

For mere information, besøg PHP-dokumentationen og MDN Web Docs.