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 Pauline 21 pauline.dubois@example.com 00352 703449 Luxembourg
Dubois Victoire 20 victoire.dubois@example.com 0032 909293 Belgique
Durand Emilie 36 emilie.durand@example.com 0033 851874 France
Durand Victoire 28 victoire.durand@example.com 0032 314860 Belgique
Durand Camille 26 camille.durand@example.com 00352 725750 Luxembourg
Durand Camille 24 camille.durand@example.com 00352 150588 Luxembourg
Durand Chloé 39 chloé.durand@example.com 0033 750445 France
Durand Amélie 42 amélie.durand@example.com 00352 247499 Luxembourg
Durand Pauline 44 pauline.durand@example.com 00352 670178 Luxembourg
Durand Amélie 28 amélie.durand@example.com 0033 188856 France
Laurent Chloé 35 chloé.laurent@example.com 0032 840645 Belgique
Laurent Amélie 37 amélie.laurent@example.com 0033 909723 France
Laurent Julie 20 julie.laurent@example.com 0033 296065 France
Laurent Pauline 19 pauline.laurent@example.com 0032 868748 Belgique
Laurent Pauline 32 pauline.laurent@example.com 00352 581890 Luxembourg
Laurent Mathilde 29 mathilde.laurent@example.com 0033 148520 France
Laurent Léa 31 léa.laurent@example.com 0033 199046 France
Martin Julie 31 julie.martin@example.com 0033 324415 France
Martin Pauline 18 pauline.martin@example.com 00352 006587 Luxembourg
Martin Amélie 35 amélie.martin@example.com 0033 677901 France
Martin Julie 20 julie.martin@example.com 0033 161761 France
Martin Léa 29 léa.martin@example.com 0033 529727 France
Martin Mathilde 45 mathilde.martin@example.com 0033 488346 France
Moreau Emilie 38 emilie.moreau@example.com 00352 473137 Luxembourg
Moreau Chloé 42 chloé.moreau@example.com 00352 414498 Luxembourg
Moreau Chloé 32 chloé.moreau@example.com 00352 068123 Luxembourg
Petit Camille 44 camille.petit@example.com 0033 160522 France
Petit Amélie 25 amélie.petit@example.com 0032 721155 Belgique
Petit Léa 30 léa.petit@example.com 0032 530799 Belgique
Petit Victoire 24 victoire.petit@example.com 00352 403747 Luxembourg
Petit Camille 19 camille.petit@example.com 0033 654165 France
Petit Camille 34 camille.petit@example.com 0033 755178 France
Petit Louise 23 louise.petit@example.com 0033 471443 France
Petit Pauline 25 pauline.petit@example.com 0032 113664 Belgique
Petit Léa 26 léa.petit@example.com 0032 664657 Belgique
Richard Chloé 42 chloé.richard@example.com 00352 242437 Luxembourg
Richard Chloé 44 chloé.richard@example.com 0033 662746 France
Robert Léa 44 léa.robert@example.com 0032 746028 Belgique
Robert Victoire 40 victoire.robert@example.com 0032 768114 Belgique
Simon Julie 37 julie.simon@example.com 00352 319855 Luxembourg
Simon Léa 32 léa.simon@example.com 00352 568735 Luxembourg
Simon Chloé 34 chloé.simon@example.com 0033 682377 France
Simon Mathilde 44 mathilde.simon@example.com 00352 246873 Luxembourg
Simon Mathilde 22 mathilde.simon@example.com 0033 622888 France
Simon Louise 35 louise.simon@example.com 0032 167676 Belgique
Simon Victoire 32 victoire.simon@example.com 0033 022202 France
Thomas Camille 25 camille.thomas@example.com 0033 171881 France
Thomas Pauline 32 pauline.thomas@example.com 00352 253621 Luxembourg
Thomas Louise 23 louise.thomas@example.com 0033 225484 France
Thomas Julie 26 julie.thomas@example.com 00352 095388 Luxembourg