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
Durand Amélie 20 amélie.durand@example.com 0033 934801 France
Martin Amélie 18 amélie.martin@example.com 0033 718207 France
Petit Amélie 31 amélie.petit@example.com 0033 710383 France
Petit Amélie 40 amélie.petit@example.com 00352 467242 Luxembourg
Richard Amélie 37 amélie.richard@example.com 00352 178105 Luxembourg
Richard Amélie 38 amélie.richard@example.com 0033 510153 France
Robert Amélie 45 amélie.robert@example.com 00352 222649 Luxembourg
Durand Camille 19 camille.durand@example.com 0032 179416 Belgique
Laurent Camille 23 camille.laurent@example.com 0032 540271 Belgique
Martin Camille 33 camille.martin@example.com 00352 501791 Luxembourg
Petit Camille 24 camille.petit@example.com 00352 154049 Luxembourg
Richard Camille 21 camille.richard@example.com 0033 719911 France
Simon Camille 32 camille.simon@example.com 0032 990750 Belgique
Laurent Chloé 28 chloé.laurent@example.com 0033 345391 France
Laurent Chloé 23 chloé.laurent@example.com 0032 876206 Belgique
Thomas Chloé 19 chloé.thomas@example.com 0033 758175 France
Dubois Emilie 19 emilie.dubois@example.com 00352 012773 Luxembourg
Laurent Emilie 35 emilie.laurent@example.com 0032 779176 Belgique
Laurent Emilie 31 emilie.laurent@example.com 0033 940212 France
Moreau Emilie 33 emilie.moreau@example.com 0032 601824 Belgique
Petit Emilie 31 emilie.petit@example.com 0032 346193 Belgique
Petit Emilie 39 emilie.petit@example.com 0033 520558 France
Richard Emilie 39 emilie.richard@example.com 00352 972370 Luxembourg
Dubois Julie 20 julie.dubois@example.com 0033 023682 France
Durand Julie 31 julie.durand@example.com 0032 201095 Belgique
Martin Julie 31 julie.martin@example.com 0033 664047 France
Martin Julie 22 julie.martin@example.com 0032 929666 Belgique
Moreau Julie 37 julie.moreau@example.com 0032 338282 Belgique
Richard Julie 40 julie.richard@example.com 0032 963292 Belgique
Thomas Julie 40 julie.thomas@example.com 0032 948962 Belgique
Durand Louise 41 louise.durand@example.com 00352 581622 Luxembourg
Petit Louise 30 louise.petit@example.com 00352 838198 Luxembourg
Richard Louise 31 louise.richard@example.com 0032 920655 Belgique
Dubois Léa 23 léa.dubois@example.com 0033 076496 France
Richard Léa 34 léa.richard@example.com 0033 699153 France
Robert Léa 31 léa.robert@example.com 0033 907220 France
Robert Léa 26 léa.robert@example.com 0032 025673 Belgique
Simon Léa 32 léa.simon@example.com 0032 056488 Belgique
Durand Mathilde 45 mathilde.durand@example.com 00352 397158 Luxembourg
Moreau Mathilde 38 mathilde.moreau@example.com 00352 147139 Luxembourg
Richard Mathilde 31 mathilde.richard@example.com 00352 650878 Luxembourg
Robert Mathilde 32 mathilde.robert@example.com 00352 721813 Luxembourg
Dubois Pauline 22 pauline.dubois@example.com 00352 989660 Luxembourg
Laurent Pauline 19 pauline.laurent@example.com 0032 442491 Belgique
Petit Pauline 18 pauline.petit@example.com 0033 010178 France
Dubois Victoire 35 victoire.dubois@example.com 0032 486161 Belgique
Dubois Victoire 35 victoire.dubois@example.com 0033 879500 France
Moreau Victoire 20 victoire.moreau@example.com 0032 402852 Belgique
Petit Victoire 22 victoire.petit@example.com 0032 753747 Belgique
Robert Victoire 33 victoire.robert@example.com 00352 688313 Luxembourg