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 Julie 34 julie.dubois@example.com 0033 906887 France
Dubois Amélie 27 amélie.dubois@example.com 00352 875967 Luxembourg
Dubois Amélie 29 amélie.dubois@example.com 0032 465428 Belgique
Dubois Amélie 32 amélie.dubois@example.com 0032 482829 Belgique
Dubois Julie 23 julie.dubois@example.com 0033 397089 France
Dubois Camille 36 camille.dubois@example.com 0033 260652 France
Dubois Camille 23 camille.dubois@example.com 0032 266410 Belgique
Durand Mathilde 42 mathilde.durand@example.com 0032 358882 Belgique
Durand Julie 20 julie.durand@example.com 0033 572193 France
Durand Chloé 37 chloé.durand@example.com 0032 748976 Belgique
Durand Victoire 23 victoire.durand@example.com 0032 634559 Belgique
Laurent Louise 37 louise.laurent@example.com 00352 695001 Luxembourg
Laurent Léa 22 léa.laurent@example.com 0032 214863 Belgique
Martin Chloé 22 chloé.martin@example.com 0033 735519 France
Martin Amélie 30 amélie.martin@example.com 0032 002451 Belgique
Martin Victoire 39 victoire.martin@example.com 0033 012305 France
Moreau Chloé 23 chloé.moreau@example.com 0033 702264 France
Moreau Chloé 21 chloé.moreau@example.com 00352 731053 Luxembourg
Moreau Mathilde 41 mathilde.moreau@example.com 00352 072189 Luxembourg
Moreau Chloé 36 chloé.moreau@example.com 0032 371627 Belgique
Moreau Pauline 22 pauline.moreau@example.com 0032 476112 Belgique
Moreau Emilie 22 emilie.moreau@example.com 0032 439867 Belgique
Moreau Emilie 36 emilie.moreau@example.com 0032 618023 Belgique
Petit Pauline 32 pauline.petit@example.com 0033 949318 France
Petit Julie 24 julie.petit@example.com 0033 949243 France
Petit Léa 29 léa.petit@example.com 0033 161361 France
Petit Amélie 36 amélie.petit@example.com 00352 087034 Luxembourg
Richard Mathilde 39 mathilde.richard@example.com 0032 846846 Belgique
Richard Chloé 24 chloé.richard@example.com 0032 932933 Belgique
Richard Victoire 32 victoire.richard@example.com 00352 461607 Luxembourg
Richard Emilie 44 emilie.richard@example.com 0032 444130 Belgique
Richard Léa 39 léa.richard@example.com 00352 807245 Luxembourg
Robert Emilie 31 emilie.robert@example.com 00352 177349 Luxembourg
Robert Emilie 21 emilie.robert@example.com 00352 165446 Luxembourg
Robert Louise 35 louise.robert@example.com 00352 090154 Luxembourg
Robert Léa 43 léa.robert@example.com 0033 533462 France
Robert Emilie 26 emilie.robert@example.com 00352 661068 Luxembourg
Robert Camille 40 camille.robert@example.com 0033 723382 France
Robert Léa 36 léa.robert@example.com 0032 060738 Belgique
Robert Julie 43 julie.robert@example.com 0033 455141 France
Simon Pauline 18 pauline.simon@example.com 00352 741013 Luxembourg
Simon Pauline 31 pauline.simon@example.com 00352 197328 Luxembourg
Simon Camille 31 camille.simon@example.com 0033 385408 France
Simon Pauline 22 pauline.simon@example.com 0033 193069 France
Simon Julie 35 julie.simon@example.com 0033 547550 France
Simon Julie 20 julie.simon@example.com 0032 318010 Belgique
Thomas Chloé 22 chloé.thomas@example.com 0033 275375 France
Thomas Camille 22 camille.thomas@example.com 0032 148272 Belgique
Thomas Louise 38 louise.thomas@example.com 0033 694635 France
Thomas Louise 24 louise.thomas@example.com 00352 011627 Luxembourg