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 Camille 28 camille.petit@example.com 0032 050385 Belgique
Laurent Mathilde 32 mathilde.laurent@example.com 0032 251012 Belgique
Richard Mathilde 30 mathilde.richard@example.com 0032 260268 Belgique
Moreau Mathilde 26 mathilde.moreau@example.com 0032 363345 Belgique
Simon Léa 37 léa.simon@example.com 0032 374521 Belgique
Petit Amélie 38 amélie.petit@example.com 0032 563300 Belgique
Thomas Chloé 23 chloé.thomas@example.com 0032 580734 Belgique
Laurent Camille 42 camille.laurent@example.com 0032 582760 Belgique
Petit Emilie 43 emilie.petit@example.com 0032 594463 Belgique
Durand Chloé 42 chloé.durand@example.com 0032 616354 Belgique
Dubois Pauline 39 pauline.dubois@example.com 0032 625731 Belgique
Thomas Chloé 23 chloé.thomas@example.com 0032 631872 Belgique
Moreau Louise 24 louise.moreau@example.com 0032 660599 Belgique
Moreau Pauline 31 pauline.moreau@example.com 0032 705565 Belgique
Richard Chloé 30 chloé.richard@example.com 0032 733885 Belgique
Petit Chloé 37 chloé.petit@example.com 0032 820538 Belgique
Petit Camille 32 camille.petit@example.com 0032 935892 Belgique
Martin Victoire 42 victoire.martin@example.com 0032 951484 Belgique
Robert Léa 29 léa.robert@example.com 0033 090019 France
Thomas Camille 24 camille.thomas@example.com 0033 181833 France
Thomas Chloé 20 chloé.thomas@example.com 0033 225768 France
Durand Léa 27 léa.durand@example.com 0033 392019 France
Petit Victoire 40 victoire.petit@example.com 0033 413717 France
Richard Emilie 44 emilie.richard@example.com 0033 444086 France
Simon Victoire 40 victoire.simon@example.com 0033 493803 France
Dubois Chloé 20 chloé.dubois@example.com 0033 493873 France
Laurent Victoire 41 victoire.laurent@example.com 0033 505485 France
Laurent Julie 32 julie.laurent@example.com 0033 575528 France
Richard Pauline 43 pauline.richard@example.com 0033 603469 France
Richard Julie 26 julie.richard@example.com 0033 606464 France
Durand Chloé 31 chloé.durand@example.com 0033 693589 France
Martin Pauline 45 pauline.martin@example.com 0033 765431 France
Durand Emilie 23 emilie.durand@example.com 0033 838768 France
Robert Léa 27 léa.robert@example.com 0033 878621 France
Simon Amélie 33 amélie.simon@example.com 0033 932568 France
Martin Louise 45 louise.martin@example.com 0033 976058 France
Moreau Amélie 20 amélie.moreau@example.com 00352 059849 Luxembourg
Richard Léa 28 léa.richard@example.com 00352 164859 Luxembourg
Dubois Amélie 39 amélie.dubois@example.com 00352 257133 Luxembourg
Moreau Louise 36 louise.moreau@example.com 00352 284589 Luxembourg
Thomas Emilie 36 emilie.thomas@example.com 00352 333836 Luxembourg
Durand Léa 20 léa.durand@example.com 00352 367414 Luxembourg
Petit Mathilde 43 mathilde.petit@example.com 00352 461976 Luxembourg
Martin Léa 44 léa.martin@example.com 00352 572242 Luxembourg
Simon Emilie 24 emilie.simon@example.com 00352 793464 Luxembourg
Laurent Camille 20 camille.laurent@example.com 00352 835269 Luxembourg
Thomas Victoire 38 victoire.thomas@example.com 00352 881198 Luxembourg
Martin Victoire 32 victoire.martin@example.com 00352 949988 Luxembourg
Robert Pauline 36 pauline.robert@example.com 00352 971984 Luxembourg
Richard Chloé 19 chloé.richard@example.com 00352 995094 Luxembourg