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
Dubois Amélie 27 amélie.dubois@example.com 0032 569116 Belgique
Martin Amélie 40 amélie.martin@example.com 00352 911146 Luxembourg
Petit Amélie 38 amélie.petit@example.com 0033 554744 France
Thomas Amélie 32 amélie.thomas@example.com 0033 234403 France
Laurent Camille 24 camille.laurent@example.com 0032 691862 Belgique
Moreau Camille 22 camille.moreau@example.com 00352 446037 Luxembourg
Petit Camille 33 camille.petit@example.com 0033 245598 France
Petit Camille 25 camille.petit@example.com 00352 113116 Luxembourg
Petit Camille 38 camille.petit@example.com 00352 560727 Luxembourg
Simon Camille 39 camille.simon@example.com 0032 996918 Belgique
Thomas Camille 21 camille.thomas@example.com 0032 119446 Belgique
Durand Chloé 44 chloé.durand@example.com 0032 704316 Belgique
Durand Chloé 29 chloé.durand@example.com 00352 054786 Luxembourg
Laurent Chloé 37 chloé.laurent@example.com 0032 777359 Belgique
Martin Chloé 25 chloé.martin@example.com 0033 335203 France
Petit Chloé 32 chloé.petit@example.com 0032 412628 Belgique
Petit Chloé 24 chloé.petit@example.com 0033 606790 France
Petit Emilie 45 emilie.petit@example.com 0032 173026 Belgique
Richard Emilie 24 emilie.richard@example.com 00352 928295 Luxembourg
Thomas Emilie 36 emilie.thomas@example.com 0033 319335 France
Durand Julie 41 julie.durand@example.com 0032 263335 Belgique
Martin Julie 45 julie.martin@example.com 0033 443255 France
Richard Julie 18 julie.richard@example.com 0033 850633 France
Thomas Julie 43 julie.thomas@example.com 0032 501572 Belgique
Petit Louise 37 louise.petit@example.com 0033 583954 France
Robert Louise 42 louise.robert@example.com 0032 058246 Belgique
Simon Louise 27 louise.simon@example.com 00352 350727 Luxembourg
Simon Louise 26 louise.simon@example.com 0032 169392 Belgique
Simon Louise 23 louise.simon@example.com 0032 514879 Belgique
Durand Léa 21 léa.durand@example.com 0032 625042 Belgique
Durand Léa 42 léa.durand@example.com 0033 232699 France
Durand Léa 28 léa.durand@example.com 0033 739435 France
Martin Léa 20 léa.martin@example.com 0032 344376 Belgique
Dubois Mathilde 33 mathilde.dubois@example.com 0032 945348 Belgique
Durand Mathilde 30 mathilde.durand@example.com 0032 199999 Belgique
Laurent Mathilde 43 mathilde.laurent@example.com 0032 485736 Belgique
Laurent Mathilde 25 mathilde.laurent@example.com 0033 173839 France
Moreau Mathilde 26 mathilde.moreau@example.com 0033 820854 France
Moreau Mathilde 44 mathilde.moreau@example.com 0032 845199 Belgique
Moreau Mathilde 45 mathilde.moreau@example.com 00352 897275 Luxembourg
Robert Mathilde 35 mathilde.robert@example.com 0032 992463 Belgique
Dubois Pauline 34 pauline.dubois@example.com 0033 524114 France
Dubois Pauline 20 pauline.dubois@example.com 0032 457212 Belgique
Durand Pauline 32 pauline.durand@example.com 0033 287214 France
Laurent Pauline 42 pauline.laurent@example.com 0033 756196 France
Laurent Pauline 32 pauline.laurent@example.com 0033 103511 France
Moreau Pauline 30 pauline.moreau@example.com 0033 200301 France
Moreau Pauline 38 pauline.moreau@example.com 0032 890873 Belgique
Durand Victoire 20 victoire.durand@example.com 0033 205245 France
Martin Victoire 30 victoire.martin@example.com 0032 228063 Belgique