<?php$n=5;$i=1;while ($i<=$n){echo"La valeur de la variable i est ".$i;$i=$i+1;}?>
code source affiché dans le navigateur
La valeur de la variable i est 1La valeur de la variable i est 2La valeur de la variable i est 3La valeur de la variable i est 4La valeur de la variable i est 5
Motivation : Retour sur TD2
code source PHP
<?php$n=5;$i=1;while ($i<=$n){echo"La valeur de la variable i est ".$i.PHP_EOL;$i=$i+1;}?>
code source affiché dans le navigateur
La valeur de la variable i est 1La valeur de la variable i est 2La valeur de la variable i est 3La valeur de la variable i est 4La valeur de la variable i est 5
Motivation : Retour sur TD2
code source PHP
<?php$n=$_GET['n'];echo"Le paramètre n est ".$n;?>
Motivation : Retour sur TD2
code source PHP
<?php$n=1;// valeur pour n par défautif (isset($_GET['n'])){$n=$_GET['n'];}echo"Le paramètre n est ".$n;?>
Sites web dynamiques
Introduction - Programme
Statistique langages côtés serveur
Introduction - Sites Web Dynamiques
Une page web dynamique est générée à la demande, contrairement à une page statique. Son contenu peut varier en fonction de divers paramètres :
Données spécifiques au moment de la consultation (heure, utilisateur connecté, formulaire soumis, etc.).
Informations provenant d’une base de données.
Données externes récupérées via une API (services tiers, flux RSS, etc.).
On distingue deux approches principales :
Programmation côté client (exécutée dans le navigateur, ex. : JavaScript).
Programmation côté serveur (génération du contenu avant l’envoi au client, ex. : PHP, Node.js).
Architecture Client-Serveur
Fonctionnement d’un site web dynamique
Ce schéma illustre le fonctionnement d’un site web dynamique en PHP en trois étapes :
Le client envoie une requête
L’utilisateur accède à une page web avec une URL contenant un paramètre (ex. ?n=Lisa).
Le navigateur envoie cette requête au serveur.
Le serveur interprète le code PHP
Le fichier PHP est exécuté sur le serveur.
Les paramètres de la requête sont traités ($_GET['n'] dans cet exemple).
Le serveur génère une page HTML en réponse.
Le client reçoit la réponse
Le serveur envoie le HTML généré au navigateur.
Le navigateur affiche la page avec le contenu dynamique (ex. Bonjour Lisa).
Ce principe illustre l’architecture client-serveur, où le traitement est effectué côté serveur avant d’être affiché côté client.
La fonction isset() permet de vérifier si un paramètre existe dans l’URL (ou dans une autre variable), et si c’est le cas, de l’utiliser dans le script. Si le paramètre n’existe pas, une valeur par défaut peut être attribuée.
<?phpif (isset($_GET['n']))$n=$_GET['n'];else{$n=1;// valeur par défaut}?>
PHP: Récupération de paramètres
On peut aussi spécifier plusieurs paramètres dans l’URL :
Le premier paramètre est attaché avec le signe ?.
Les paramètres suivants sont séparés par le signe &.
<?php$a=$_GET['prenom'];// Récupère le prénom$b=$_GET['nom'];// Récupère le nom$c=$_GET['datenaissance'];// Récupère la date de naissanceecho$a;// Affiche le prénomecho$b;// Affiche le nomecho$c;// Affiche la date de naissance?>
PHP: Récupération de paramètres
Ce n’est pas obligatoire, mais souvent, on utilise un nom de variable qui correspond au nom de paramètre dans l’URL pour rendre le code plus lisible et intuitif.
<?php$prenom=$_GET['prenom'];// Récupère le prénom$nom=$_GET['nom'];// Récupère le nom$datenaissance=$_GET['datenaissance'];// Récupère la date de naissanceecho$prenom;// Affiche le prénomecho$nom;// Affiche le nomecho$datenaissance;// Affiche la date de naissance?>
Alterner entre PHP et HTML
Lorsqu’on produit des pages HTML avec du code PHP :
Ce qui est entre les balises PHP <?php et ?> est interprété par le préprocesseur PHP.
Ce qui n’est pas entre les balises PHP <?php et ?> est produit tel quel en sortie.
On peut basculer entre le code PHP et le HTML à volonté.
Alternance entre PHP et HTML (donc changements de contexte)
Un tableau associatif (ou dictionnaire) associe des clés personnalisées à des valeurs, ce qui permet d’utiliser des chaînes de caractères comme indices au lieu de simples nombres.
Voici un exemple avec les informations d’une personne :
Les tableaux peuvent aussi être indexés et associatifs en même temps. Cela permet de créer des structures plus complexes, comme une liste de personnes, où chaque personne est représentée par un tableau associatif.
Voici un exemple de tableau indexé contenant des tableaux associatifs :