PHP s'exécute sur le serveur, pas dans le navigateur. Il génère du HTML qui est ensuite envoyé au client.
<?php
// PHP est délimité par ces balises
$nom = "Martin";
$age = 25;
echo "Bonjour, je m'appelle " . $nom;
?>
<!-- Mélanger PHP et HTML -->
<h1>Bonjour, <?= $nom ?> !</h1>
<p>Tu as <?= $age ?> ans.</p>
Attention : tes fichiers doivent avoir l'extension .php, et être exécutés depuis un serveur local (WAMP, XAMPP, Laragon) ou distant (Plesk).
Sur Plesk : upload tes fichiers dans le dossier httpdocs du sous-domaine, et accède via l'URL.
<?php
// Variables
$prenom = "Sara";
$score = 85;
$actif = true;
// Condition
if ($score >= 80) {
echo "Excellent résultat !";
} elseif ($score >= 60) {
echo "Bon travail.";
} else {
echo "Continue d'essayer.";
}
// Boucle
$competences = ["HTML", "CSS", "JavaScript", "PHP"];
foreach ($competences as $comp) {
echo "<li>" . $comp . "</li>";
}
// Boucle for classique
for ($i = 1; $i <= 5; $i++) {
echo "<p>Étape " . $i . "</p>";
}
?>
Les include permettent de ne pas répéter le header et le footer sur chaque page.
<!-- includes/header.php -->
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<title><?= $titre_page ?? 'Mon site' ?></title>
<link rel="stylesheet" href="/css/style.css">
</head>
<body>
<header>...</header>
<main>
<!-- includes/footer.php -->
</main>
<footer>© <?= date('Y') ?></footer>
</body>
</html>
<!-- index.php -->
<?php
$titre_page = "Accueil";
include "includes/header.php";
?>
<h1>Bienvenue</h1>
<?php include "includes/footer.php"; ?>
PHP récupère les données des formulaires via $_POST (données envoyées) et $_GET (paramètres URL).
<!-- form.html -->
<form method="POST" action="traitement.php">
<input type="text" name="nom" placeholder="Ton nom">
<button type="submit">Envoyer</button>
</form>
<!-- traitement.php -->
<?php
if ($_SERVER["REQUEST_METHOD"] === "POST") {
$nom = trim($_POST["nom"] ?? "");
if ($nom === "") {
$erreur = "Le nom est obligatoire.";
} else {
$message = "Bonjour " . htmlspecialchars($nom) . " !";
}
}
?>
htmlspecialchars() — toujours utiliser pour afficher des données venant de l'utilisateur. Protège contre les injections XSS.
Transforme ta page "À propos" en PHP.
Structure attendue
sequence-6/
├── index.php
├── contact.php
├── includes/
│ ├── header.php
│ └── footer.php
└── css/
└── style.css
Fonctionnalités
- Header et footer en fichiers séparés, inclus sur chaque page
- Variable
$titre_page dans chaque page pour personnaliser le <title>
- Page
contact.php avec un formulaire dont PHP valide les champs
- Si formulaire valide, afficher un message de confirmation
- Utiliser
htmlspecialchars() pour toutes les données affichées
Quiz — Séquence 6
Vérifie ta compréhension avant de passer à la suite. Réponds à toutes les questions, puis valide.