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
Thomas Victoire 43 victoire.thomas@example.com 0032 975223 Belgique
Simon Victoire 23 victoire.simon@example.com 0033 548229 France
Robert Victoire 35 victoire.robert@example.com 0032 091028 Belgique
Richard Victoire 30 victoire.richard@example.com 0033 620182 France
Richard Victoire 41 victoire.richard@example.com 00352 236836 Luxembourg
Dubois Victoire 42 victoire.dubois@example.com 0032 942741 Belgique
Dubois Victoire 40 victoire.dubois@example.com 00352 067781 Luxembourg
Thomas Pauline 38 pauline.thomas@example.com 0033 820376 France
Thomas Pauline 43 pauline.thomas@example.com 0032 039519 Belgique
Moreau Pauline 38 pauline.moreau@example.com 0032 989886 Belgique
Laurent Pauline 20 pauline.laurent@example.com 0033 332384 France
Durand Pauline 35 pauline.durand@example.com 0033 127033 France
Dubois Pauline 25 pauline.dubois@example.com 00352 574320 Luxembourg
Robert Mathilde 43 mathilde.robert@example.com 00352 635077 Luxembourg
Thomas Léa 36 léa.thomas@example.com 00352 936881 Luxembourg
Petit Léa 28 léa.petit@example.com 0032 827672 Belgique
Martin Léa 23 léa.martin@example.com 00352 781177 Luxembourg
Petit Louise 22 louise.petit@example.com 0032 063924 Belgique
Dubois Louise 26 louise.dubois@example.com 00352 851625 Luxembourg
Simon Julie 38 julie.simon@example.com 0033 152225 France
Robert Julie 22 julie.robert@example.com 0032 056935 Belgique
Laurent Julie 44 julie.laurent@example.com 0032 742688 Belgique
Durand Julie 43 julie.durand@example.com 0032 052262 Belgique
Dubois Julie 30 julie.dubois@example.com 00352 351392 Luxembourg
Dubois Julie 30 julie.dubois@example.com 0032 125868 Belgique
Thomas Emilie 43 emilie.thomas@example.com 0032 031938 Belgique
Thomas Emilie 44 emilie.thomas@example.com 00352 777027 Luxembourg
Thomas Emilie 19 emilie.thomas@example.com 00352 322356 Luxembourg
Thomas Emilie 39 emilie.thomas@example.com 0032 021524 Belgique
Robert Emilie 36 emilie.robert@example.com 0032 893175 Belgique
Richard Emilie 44 emilie.richard@example.com 0033 128075 France
Petit Emilie 20 emilie.petit@example.com 0033 311155 France
Moreau Emilie 40 emilie.moreau@example.com 0032 950351 Belgique
Thomas Chloé 44 chloé.thomas@example.com 00352 212749 Luxembourg
Thomas Chloé 34 chloé.thomas@example.com 0032 342507 Belgique
Simon Chloé 39 chloé.simon@example.com 0032 003481 Belgique
Petit Chloé 33 chloé.petit@example.com 0032 046763 Belgique
Martin Chloé 35 chloé.martin@example.com 0033 640957 France
Laurent Chloé 35 chloé.laurent@example.com 0033 597258 France
Laurent Chloé 31 chloé.laurent@example.com 00352 279843 Luxembourg
Durand Chloé 36 chloé.durand@example.com 0032 499247 Belgique
Robert Camille 33 camille.robert@example.com 00352 996569 Luxembourg
Richard Camille 23 camille.richard@example.com 0032 654161 Belgique
Petit Camille 38 camille.petit@example.com 0033 235377 France
Durand Camille 19 camille.durand@example.com 0033 116846 France
Dubois Camille 45 camille.dubois@example.com 00352 744858 Luxembourg
Dubois Camille 42 camille.dubois@example.com 0033 577867 France
Richard Amélie 45 amélie.richard@example.com 00352 096613 Luxembourg
Martin Amélie 26 amélie.martin@example.com 0033 629106 France
Laurent Amélie 38 amélie.laurent@example.com 00352 322657 Luxembourg