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 Amélie 30 amélie.thomas@example.com 0033 279606 France
Petit Amélie 40 amélie.petit@example.com 0033 203552 France
Dubois Amélie 45 amélie.dubois@example.com 00352 297919 Luxembourg
Moreau Amélie 34 amélie.moreau@example.com 00352 579639 Luxembourg
Laurent Amélie 40 amélie.laurent@example.com 0033 989812 France
Petit Amélie 18 amélie.petit@example.com 0032 834966 Belgique
Simon Amélie 38 amélie.simon@example.com 0032 175398 Belgique
Durand Amélie 33 amélie.durand@example.com 0032 919325 Belgique
Dubois Camille 22 camille.dubois@example.com 00352 022720 Luxembourg
Laurent Camille 44 camille.laurent@example.com 00352 415421 Luxembourg
Thomas Camille 28 camille.thomas@example.com 0033 098572 France
Laurent Chloé 25 chloé.laurent@example.com 0033 873446 France
Dubois Chloé 44 chloé.dubois@example.com 0033 363970 France
Dubois Chloé 33 chloé.dubois@example.com 0033 027635 France
Thomas Chloé 40 chloé.thomas@example.com 00352 681411 Luxembourg
Simon Chloé 25 chloé.simon@example.com 0032 568509 Belgique
Simon Chloé 23 chloé.simon@example.com 0033 064026 France
Thomas Emilie 37 emilie.thomas@example.com 0033 918098 France
Simon Emilie 43 emilie.simon@example.com 00352 245461 Luxembourg
Dubois Emilie 35 emilie.dubois@example.com 0033 361801 France
Martin Emilie 25 emilie.martin@example.com 0033 604859 France
Dubois Emilie 30 emilie.dubois@example.com 0032 891298 Belgique
Simon Emilie 40 emilie.simon@example.com 00352 103008 Luxembourg
Simon Emilie 32 emilie.simon@example.com 0032 480498 Belgique
Laurent Julie 32 julie.laurent@example.com 00352 013789 Luxembourg
Simon Julie 37 julie.simon@example.com 0033 827877 France
Petit Julie 22 julie.petit@example.com 0033 925635 France
Durand Julie 23 julie.durand@example.com 0032 597621 Belgique
Durand Julie 30 julie.durand@example.com 00352 121091 Luxembourg
Martin Julie 40 julie.martin@example.com 00352 995818 Luxembourg
Petit Louise 20 louise.petit@example.com 0032 760212 Belgique
Dubois Louise 38 louise.dubois@example.com 0033 384080 France
Dubois Louise 18 louise.dubois@example.com 00352 726833 Luxembourg
Simon Louise 40 louise.simon@example.com 0033 759993 France
Robert Louise 19 louise.robert@example.com 0033 602664 France
Laurent Léa 33 léa.laurent@example.com 0032 290485 Belgique
Dubois Léa 21 léa.dubois@example.com 0032 203586 Belgique
Robert Léa 20 léa.robert@example.com 00352 830873 Luxembourg
Dubois Mathilde 36 mathilde.dubois@example.com 00352 927736 Luxembourg
Moreau Mathilde 35 mathilde.moreau@example.com 00352 739952 Luxembourg
Petit Mathilde 22 mathilde.petit@example.com 0032 109601 Belgique
Durand Mathilde 26 mathilde.durand@example.com 0033 816202 France
Simon Pauline 29 pauline.simon@example.com 00352 054935 Luxembourg
Robert Pauline 42 pauline.robert@example.com 0033 524769 France
Moreau Pauline 19 pauline.moreau@example.com 0032 158266 Belgique
Moreau Victoire 40 victoire.moreau@example.com 00352 592307 Luxembourg
Richard Victoire 39 victoire.richard@example.com 00352 912008 Luxembourg
Simon Victoire 44 victoire.simon@example.com 00352 064245 Luxembourg
Simon Victoire 40 victoire.simon@example.com 0032 270538 Belgique
Durand Victoire 45 victoire.durand@example.com 0032 936972 Belgique