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
Petit Amélie 28 amélie.petit@example.com 0032 507433 Belgique
Petit Amélie 38 amélie.petit@example.com 0033 286118 France
Thomas Amélie 33 amélie.thomas@example.com 0033 912161 France
Dubois Amélie 33 amélie.dubois@example.com 0033 900644 France
Moreau Amélie 33 amélie.moreau@example.com 0033 797159 France
Simon Amélie 39 amélie.simon@example.com 00352 963565 Luxembourg
Moreau Camille 42 camille.moreau@example.com 0032 006055 Belgique
Martin Camille 45 camille.martin@example.com 00352 341534 Luxembourg
Robert Chloé 35 chloé.robert@example.com 0033 896027 France
Laurent Chloé 38 chloé.laurent@example.com 00352 513407 Luxembourg
Martin Chloé 31 chloé.martin@example.com 00352 665645 Luxembourg
Petit Chloé 22 chloé.petit@example.com 0032 510060 Belgique
Petit Chloé 22 chloé.petit@example.com 0033 099994 France
Martin Chloé 25 chloé.martin@example.com 0033 489514 France
Moreau Emilie 45 emilie.moreau@example.com 00352 915389 Luxembourg
Thomas Emilie 18 emilie.thomas@example.com 0032 561908 Belgique
Laurent Emilie 30 emilie.laurent@example.com 0033 820709 France
Petit Emilie 44 emilie.petit@example.com 0032 576946 Belgique
Dubois Emilie 40 emilie.dubois@example.com 00352 510658 Luxembourg
Thomas Julie 21 julie.thomas@example.com 0032 489400 Belgique
Durand Julie 29 julie.durand@example.com 0032 859084 Belgique
Simon Julie 41 julie.simon@example.com 0033 103102 France
Laurent Julie 26 julie.laurent@example.com 0033 065652 France
Richard Julie 31 julie.richard@example.com 0033 228575 France
Moreau Julie 42 julie.moreau@example.com 0033 855107 France
Martin Julie 39 julie.martin@example.com 0032 488762 Belgique
Thomas Julie 39 julie.thomas@example.com 0033 914780 France
Martin Louise 23 louise.martin@example.com 0033 626481 France
Simon Louise 40 louise.simon@example.com 00352 110170 Luxembourg
Moreau Louise 19 louise.moreau@example.com 0033 710594 France
Simon Louise 25 louise.simon@example.com 0033 489111 France
Laurent Léa 30 léa.laurent@example.com 0032 079164 Belgique
Dubois Léa 43 léa.dubois@example.com 0032 494918 Belgique
Simon Léa 25 léa.simon@example.com 0033 385665 France
Simon Léa 21 léa.simon@example.com 0032 110537 Belgique
Martin Léa 32 léa.martin@example.com 00352 236608 Luxembourg
Simon Léa 28 léa.simon@example.com 0032 027381 Belgique
Durand Mathilde 26 mathilde.durand@example.com 00352 752635 Luxembourg
Robert Mathilde 31 mathilde.robert@example.com 0033 504400 France
Moreau Mathilde 26 mathilde.moreau@example.com 00352 071151 Luxembourg
Robert Mathilde 35 mathilde.robert@example.com 00352 948982 Luxembourg
Durand Pauline 42 pauline.durand@example.com 0032 304141 Belgique
Petit Pauline 33 pauline.petit@example.com 0032 716716 Belgique
Dubois Pauline 20 pauline.dubois@example.com 00352 290351 Luxembourg
Durand Pauline 20 pauline.durand@example.com 0033 048134 France
Moreau Pauline 27 pauline.moreau@example.com 00352 955081 Luxembourg
Durand Victoire 27 victoire.durand@example.com 0033 825169 France
Simon Victoire 42 victoire.simon@example.com 0033 739872 France
Petit Victoire 36 victoire.petit@example.com 0033 580163 France
Dubois Victoire 18 victoire.dubois@example.com 0033 642449 France