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
Martin Victoire 31 victoire.martin@example.com 0032 616182 Belgique
Richard Victoire 35 victoire.richard@example.com 0032 195539 Belgique
Durand Victoire 23 victoire.durand@example.com 0033 917115 France
Robert Pauline 30 pauline.robert@example.com 0033 868563 France
Dubois Pauline 24 pauline.dubois@example.com 0033 297677 France
Durand Pauline 20 pauline.durand@example.com 00352 900983 Luxembourg
Martin Pauline 36 pauline.martin@example.com 00352 695079 Luxembourg
Martin Mathilde 38 mathilde.martin@example.com 00352 295075 Luxembourg
Richard Mathilde 45 mathilde.richard@example.com 0032 648102 Belgique
Petit Mathilde 42 mathilde.petit@example.com 0033 618398 France
Moreau Mathilde 43 mathilde.moreau@example.com 0033 786957 France
Laurent Mathilde 19 mathilde.laurent@example.com 0032 294108 Belgique
Simon Léa 41 léa.simon@example.com 0033 026367 France
Dubois Léa 28 léa.dubois@example.com 0032 156132 Belgique
Durand Léa 28 léa.durand@example.com 00352 234670 Luxembourg
Simon Léa 37 léa.simon@example.com 00352 810699 Luxembourg
Durand Léa 43 léa.durand@example.com 00352 525600 Luxembourg
Richard Léa 36 léa.richard@example.com 00352 713352 Luxembourg
Petit Léa 31 léa.petit@example.com 00352 105847 Luxembourg
Petit Louise 20 louise.petit@example.com 0033 900025 France
Petit Louise 33 louise.petit@example.com 0032 338140 Belgique
Martin Louise 40 louise.martin@example.com 0032 167666 Belgique
Martin Louise 44 louise.martin@example.com 0033 228556 France
Dubois Louise 35 louise.dubois@example.com 0032 308302 Belgique
Simon Louise 22 louise.simon@example.com 0032 594591 Belgique
Moreau Julie 39 julie.moreau@example.com 00352 988125 Luxembourg
Simon Julie 26 julie.simon@example.com 00352 698035 Luxembourg
Dubois Julie 41 julie.dubois@example.com 0032 800271 Belgique
Martin Emilie 42 emilie.martin@example.com 00352 019538 Luxembourg
Robert Emilie 30 emilie.robert@example.com 00352 110963 Luxembourg
Robert Emilie 22 emilie.robert@example.com 0032 773524 Belgique
Robert Emilie 38 emilie.robert@example.com 00352 941862 Luxembourg
Petit Emilie 34 emilie.petit@example.com 0033 215998 France
Petit Emilie 18 emilie.petit@example.com 0032 223438 Belgique
Simon Chloé 23 chloé.simon@example.com 0033 490495 France
Richard Chloé 28 chloé.richard@example.com 0033 321404 France
Thomas Camille 23 camille.thomas@example.com 0032 508168 Belgique
Moreau Camille 44 camille.moreau@example.com 0033 189866 France
Simon Camille 31 camille.simon@example.com 00352 887542 Luxembourg
Simon Camille 44 camille.simon@example.com 0032 203602 Belgique
Dubois Camille 26 camille.dubois@example.com 0032 398588 Belgique
Moreau Camille 41 camille.moreau@example.com 0033 669067 France
Thomas Amélie 40 amélie.thomas@example.com 0033 840768 France
Petit Amélie 26 amélie.petit@example.com 0032 805923 Belgique
Thomas Amélie 29 amélie.thomas@example.com 0033 843531 France
Robert Amélie 30 amélie.robert@example.com 00352 084400 Luxembourg
Robert Amélie 19 amélie.robert@example.com 0033 799897 France
Dubois Amélie 35 amélie.dubois@example.com 0033 986682 France
Moreau Amélie 27 amélie.moreau@example.com 00352 893856 Luxembourg
Simon Amélie 43 amélie.simon@example.com 0032 080484 Belgique