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 Emilie 39 emilie.thomas@example.com 0032 211142 Belgique
Robert Mathilde 27 mathilde.robert@example.com 0032 253418 Belgique
Simon Julie 25 julie.simon@example.com 0032 505854 Belgique
Laurent Victoire 25 victoire.laurent@example.com 0032 517693 Belgique
Moreau Mathilde 34 mathilde.moreau@example.com 0032 536076 Belgique
Durand Louise 32 louise.durand@example.com 0032 564004 Belgique
Richard Louise 19 louise.richard@example.com 0032 677300 Belgique
Durand Amélie 29 amélie.durand@example.com 0032 718735 Belgique
Martin Léa 42 léa.martin@example.com 0032 727733 Belgique
Moreau Chloé 44 chloé.moreau@example.com 0032 781895 Belgique
Thomas Louise 28 louise.thomas@example.com 0032 865454 Belgique
Petit Louise 45 louise.petit@example.com 0032 916549 Belgique
Durand Chloé 40 chloé.durand@example.com 0032 916711 Belgique
Petit Camille 26 camille.petit@example.com 0032 984366 Belgique
Simon Mathilde 44 mathilde.simon@example.com 0032 988122 Belgique
Robert Mathilde 45 mathilde.robert@example.com 0032 988508 Belgique
Durand Victoire 25 victoire.durand@example.com 0033 016734 France
Robert Victoire 30 victoire.robert@example.com 0033 029015 France
Laurent Victoire 35 victoire.laurent@example.com 0033 214420 France
Martin Emilie 45 emilie.martin@example.com 0033 284365 France
Simon Camille 32 camille.simon@example.com 0033 448678 France
Durand Louise 22 louise.durand@example.com 0033 463129 France
Dubois Camille 42 camille.dubois@example.com 0033 585200 France
Thomas Amélie 30 amélie.thomas@example.com 0033 662973 France
Durand Emilie 32 emilie.durand@example.com 0033 677176 France
Petit Victoire 42 victoire.petit@example.com 0033 840277 France
Petit Victoire 45 victoire.petit@example.com 0033 948042 France
Durand Chloé 37 chloé.durand@example.com 0033 995225 France
Petit Pauline 26 pauline.petit@example.com 00352 129430 Luxembourg
Robert Amélie 44 amélie.robert@example.com 00352 134681 Luxembourg
Laurent Camille 39 camille.laurent@example.com 00352 187773 Luxembourg
Moreau Victoire 24 victoire.moreau@example.com 00352 265260 Luxembourg
Dubois Victoire 43 victoire.dubois@example.com 00352 297202 Luxembourg
Robert Louise 22 louise.robert@example.com 00352 317951 Luxembourg
Dubois Mathilde 30 mathilde.dubois@example.com 00352 340389 Luxembourg
Thomas Mathilde 33 mathilde.thomas@example.com 00352 362337 Luxembourg
Simon Louise 36 louise.simon@example.com 00352 379726 Luxembourg
Richard Mathilde 35 mathilde.richard@example.com 00352 508609 Luxembourg
Martin Pauline 39 pauline.martin@example.com 00352 513499 Luxembourg
Robert Julie 41 julie.robert@example.com 00352 541149 Luxembourg
Richard Louise 44 louise.richard@example.com 00352 581691 Luxembourg
Durand Chloé 40 chloé.durand@example.com 00352 623114 Luxembourg
Simon Louise 43 louise.simon@example.com 00352 660731 Luxembourg
Petit Emilie 42 emilie.petit@example.com 00352 681680 Luxembourg
Thomas Amélie 34 amélie.thomas@example.com 00352 701381 Luxembourg
Robert Emilie 22 emilie.robert@example.com 00352 727182 Luxembourg
Moreau Louise 45 louise.moreau@example.com 00352 746458 Luxembourg
Petit Léa 21 léa.petit@example.com 00352 775169 Luxembourg
Moreau Chloé 18 chloé.moreau@example.com 00352 938712 Luxembourg
Moreau Camille 29 camille.moreau@example.com 00352 968016 Luxembourg