La variable superglobale $_GET

La variable superglobale $_GET est souvent utilisée pour récupérer les paramètres passés dans une URL.
Les paramètres sont passés à la page en utilisant la méthode GET du protocole HTTP.
Les données récupérées via cette méthode sont généralement utilisées pour fournir des informations non sensibles à une page web, par exemple pour récupérer l'ordre de tri, les filtres ou les paramètres de pagination d'un tableau.

Exemple d'utilisation :

  • Dans l'URL "example.com/page.php?nom=John&age=25", les paramètres passés sont "nom" et "age" avec les valeurs respectives "John" et "25".
  • On peut récupérer ces valeurs en utilisant $_GET['nom'] et $_GET['age'] dans le script PHP.

Avertissement sur la sécurité :
Les données passées dans les paramètres GET peuvent être vues et modifiées par l'utilisateur, il est donc important de ne pas inclure d'informations sensibles dans ces paramètres.
En savoir plus sur les injections SQL ou les attaques XSS.


Le tableau ci-dessous est un exemple concret d'utilisation de $_GET pour gérer l'affichage d'une liste d'élèves.

N'hésitez pas à regarder le code/les commentaires de cette page afin d'en comprendre le fonctionnement.

  • Au premier affichage, on génère 50 élèves qui sont stockés dans une variable de session.
  • Au premier affichage, on ordonne par défaut sur la colonne 'Nom' dans la direction 'desc'
  • On utilise une boucle sur une variable $columns pour afficher chaque élément du header du tableau
Nom Prénom Age Email Téléphone Pays
Robert Chloé 32 chloé.robert@example.com 0032 425052 Belgique
Richard Camille 31 camille.richard@example.com 0032 581929 Belgique
Laurent Emilie 33 emilie.laurent@example.com 0032 730628 Belgique
Durand Mathilde 22 mathilde.durand@example.com 0032 531268 Belgique
Durand Pauline 34 pauline.durand@example.com 0032 335763 Belgique
Robert Louise 20 louise.robert@example.com 0032 725683 Belgique
Thomas Amélie 20 amélie.thomas@example.com 0032 286895 Belgique
Durand Emilie 40 emilie.durand@example.com 0032 357531 Belgique
Thomas Louise 37 louise.thomas@example.com 0032 368592 Belgique
Richard Chloé 28 chloé.richard@example.com 0032 248130 Belgique
Thomas Victoire 36 victoire.thomas@example.com 0032 228455 Belgique
Robert Léa 21 léa.robert@example.com 0032 591462 Belgique
Martin Amélie 24 amélie.martin@example.com 0032 249423 Belgique
Simon Mathilde 41 mathilde.simon@example.com 0032 962398 Belgique
Thomas Louise 32 louise.thomas@example.com 0032 962262 Belgique
Martin Louise 43 louise.martin@example.com 0032 783474 Belgique
Simon Julie 25 julie.simon@example.com 0032 316094 Belgique
Richard Julie 43 julie.richard@example.com 0032 297402 Belgique
Laurent Victoire 23 victoire.laurent@example.com 0032 821783 Belgique
Moreau Léa 26 léa.moreau@example.com 0032 361714 Belgique
Moreau Emilie 43 emilie.moreau@example.com 0033 003160 France
Richard Pauline 28 pauline.richard@example.com 0033 257822 France
Durand Victoire 37 victoire.durand@example.com 0033 159699 France
Martin Mathilde 29 mathilde.martin@example.com 0033 038308 France
Thomas Emilie 27 emilie.thomas@example.com 0033 072523 France
Durand Camille 29 camille.durand@example.com 0033 886142 France
Richard Julie 42 julie.richard@example.com 0033 303360 France
Richard Léa 34 léa.richard@example.com 0033 266528 France
Thomas Léa 36 léa.thomas@example.com 0033 407823 France
Laurent Amélie 22 amélie.laurent@example.com 0033 199300 France
Moreau Victoire 40 victoire.moreau@example.com 0033 521785 France
Robert Mathilde 22 mathilde.robert@example.com 0033 597259 France
Durand Louise 34 louise.durand@example.com 0033 729450 France
Richard Amélie 42 amélie.richard@example.com 0033 827695 France
Martin Emilie 31 emilie.martin@example.com 0033 238448 France
Simon Mathilde 45 mathilde.simon@example.com 0033 126719 France
Moreau Julie 24 julie.moreau@example.com 00352 270708 Luxembourg
Thomas Mathilde 28 mathilde.thomas@example.com 00352 070620 Luxembourg
Durand Emilie 43 emilie.durand@example.com 00352 872622 Luxembourg
Petit Léa 20 léa.petit@example.com 00352 226753 Luxembourg
Richard Julie 27 julie.richard@example.com 00352 168788 Luxembourg
Thomas Victoire 24 victoire.thomas@example.com 00352 552552 Luxembourg
Martin Julie 43 julie.martin@example.com 00352 102312 Luxembourg
Dubois Louise 43 louise.dubois@example.com 00352 365139 Luxembourg
Martin Louise 41 louise.martin@example.com 00352 231915 Luxembourg
Robert Emilie 22 emilie.robert@example.com 00352 260087 Luxembourg
Robert Victoire 24 victoire.robert@example.com 00352 649245 Luxembourg
Petit Louise 44 louise.petit@example.com 00352 114468 Luxembourg
Petit Emilie 39 emilie.petit@example.com 00352 376002 Luxembourg
Moreau Amélie 37 amélie.moreau@example.com 00352 136349 Luxembourg