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 32 victoire.thomas@example.com 00352 587680 Luxembourg
Martin Victoire 35 victoire.martin@example.com 0033 014090 France
Durand Victoire 24 victoire.durand@example.com 0033 785565 France
Thomas Pauline 19 pauline.thomas@example.com 00352 761082 Luxembourg
Moreau Pauline 21 pauline.moreau@example.com 0032 142183 Belgique
Simon Pauline 42 pauline.simon@example.com 0033 893525 France
Dubois Pauline 40 pauline.dubois@example.com 0032 979879 Belgique
Thomas Pauline 31 pauline.thomas@example.com 0033 539400 France
Petit Pauline 44 pauline.petit@example.com 00352 579824 Luxembourg
Robert Pauline 34 pauline.robert@example.com 00352 024027 Luxembourg
Thomas Pauline 21 pauline.thomas@example.com 00352 811037 Luxembourg
Richard Pauline 35 pauline.richard@example.com 0032 023935 Belgique
Moreau Mathilde 34 mathilde.moreau@example.com 0033 844161 France
Robert Mathilde 37 mathilde.robert@example.com 00352 893896 Luxembourg
Laurent Léa 26 léa.laurent@example.com 00352 171364 Luxembourg
Petit Léa 40 léa.petit@example.com 00352 757240 Luxembourg
Petit Léa 37 léa.petit@example.com 0032 847197 Belgique
Dubois Léa 40 léa.dubois@example.com 00352 260912 Luxembourg
Moreau Louise 33 louise.moreau@example.com 0032 596971 Belgique
Thomas Louise 40 louise.thomas@example.com 0032 326067 Belgique
Simon Louise 19 louise.simon@example.com 00352 517764 Luxembourg
Petit Louise 35 louise.petit@example.com 00352 800742 Luxembourg
Laurent Louise 28 louise.laurent@example.com 0032 994097 Belgique
Durand Louise 29 louise.durand@example.com 0033 876375 France
Moreau Julie 22 julie.moreau@example.com 0033 702273 France
Richard Julie 21 julie.richard@example.com 00352 038882 Luxembourg
Martin Julie 34 julie.martin@example.com 0032 310597 Belgique
Moreau Julie 24 julie.moreau@example.com 0032 175073 Belgique
Moreau Emilie 21 emilie.moreau@example.com 0033 894924 France
Richard Emilie 44 emilie.richard@example.com 0033 172789 France
Thomas Emilie 44 emilie.thomas@example.com 00352 684949 Luxembourg
Richard Emilie 21 emilie.richard@example.com 0033 136432 France
Durand Emilie 28 emilie.durand@example.com 0033 445525 France
Richard Emilie 21 emilie.richard@example.com 00352 776072 Luxembourg
Petit Chloé 34 chloé.petit@example.com 0032 667725 Belgique
Dubois Chloé 37 chloé.dubois@example.com 0033 021214 France
Petit Chloé 29 chloé.petit@example.com 00352 558159 Luxembourg
Petit Chloé 28 chloé.petit@example.com 00352 776456 Luxembourg
Martin Chloé 33 chloé.martin@example.com 0033 669373 France
Petit Camille 44 camille.petit@example.com 00352 075424 Luxembourg
Dubois Camille 24 camille.dubois@example.com 0032 480597 Belgique
Dubois Camille 29 camille.dubois@example.com 0032 095676 Belgique
Martin Camille 20 camille.martin@example.com 00352 141826 Luxembourg
Simon Camille 32 camille.simon@example.com 0032 436625 Belgique
Richard Camille 39 camille.richard@example.com 00352 883049 Luxembourg
Laurent Amélie 24 amélie.laurent@example.com 00352 154925 Luxembourg
Dubois Amélie 42 amélie.dubois@example.com 00352 727452 Luxembourg
Richard Amélie 35 amélie.richard@example.com 0032 730411 Belgique
Robert Amélie 34 amélie.robert@example.com 00352 653191 Luxembourg
Martin Amélie 21 amélie.martin@example.com 00352 503098 Luxembourg