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
Moreau Louise 36 louise.moreau@example.com 00352 277503 Luxembourg
Dubois Léa 27 léa.dubois@example.com 00352 630561 Luxembourg
Laurent Léa 44 léa.laurent@example.com 00352 239124 Luxembourg
Robert Pauline 39 pauline.robert@example.com 00352 890523 Luxembourg
Laurent Victoire 29 victoire.laurent@example.com 00352 677994 Luxembourg
Durand Amélie 43 amélie.durand@example.com 00352 362042 Luxembourg
Martin Camille 22 camille.martin@example.com 00352 777009 Luxembourg
Laurent Chloé 21 chloé.laurent@example.com 00352 546075 Luxembourg
Simon Amélie 28 amélie.simon@example.com 00352 399924 Luxembourg
Petit Pauline 32 pauline.petit@example.com 00352 729777 Luxembourg
Richard Julie 35 julie.richard@example.com 00352 977274 Luxembourg
Durand Louise 27 louise.durand@example.com 00352 314781 Luxembourg
Martin Chloé 23 chloé.martin@example.com 00352 642843 Luxembourg
Durand Amélie 21 amélie.durand@example.com 0033 194108 France
Dubois Camille 41 camille.dubois@example.com 0033 122422 France
Simon Victoire 44 victoire.simon@example.com 0033 460171 France
Laurent Emilie 36 emilie.laurent@example.com 0033 611677 France
Simon Camille 35 camille.simon@example.com 0033 844571 France
Thomas Julie 45 julie.thomas@example.com 0033 988238 France
Richard Chloé 20 chloé.richard@example.com 0033 822315 France
Moreau Emilie 23 emilie.moreau@example.com 0033 480594 France
Laurent Amélie 20 amélie.laurent@example.com 0033 252599 France
Thomas Amélie 34 amélie.thomas@example.com 0033 806728 France
Moreau Camille 45 camille.moreau@example.com 0033 488369 France
Robert Camille 21 camille.robert@example.com 0033 436909 France
Moreau Amélie 43 amélie.moreau@example.com 0033 939985 France
Laurent Louise 18 louise.laurent@example.com 0033 449891 France
Simon Amélie 31 amélie.simon@example.com 0033 188230 France
Thomas Camille 45 camille.thomas@example.com 0033 589722 France
Moreau Louise 19 louise.moreau@example.com 0033 121725 France
Richard Louise 22 louise.richard@example.com 0033 376390 France
Petit Pauline 29 pauline.petit@example.com 0033 440003 France
Durand Pauline 28 pauline.durand@example.com 0032 591512 Belgique
Durand Emilie 21 emilie.durand@example.com 0032 069000 Belgique
Dubois Amélie 20 amélie.dubois@example.com 0032 147202 Belgique
Martin Emilie 33 emilie.martin@example.com 0032 844433 Belgique
Robert Amélie 38 amélie.robert@example.com 0032 813649 Belgique
Laurent Amélie 43 amélie.laurent@example.com 0032 136097 Belgique
Dubois Mathilde 38 mathilde.dubois@example.com 0032 006096 Belgique
Thomas Louise 37 louise.thomas@example.com 0032 525995 Belgique
Robert Camille 34 camille.robert@example.com 0032 012936 Belgique
Robert Pauline 45 pauline.robert@example.com 0032 257966 Belgique
Richard Pauline 35 pauline.richard@example.com 0032 374502 Belgique
Richard Julie 26 julie.richard@example.com 0032 575088 Belgique
Robert Emilie 31 emilie.robert@example.com 0032 454525 Belgique
Durand Pauline 18 pauline.durand@example.com 0032 362164 Belgique
Laurent Julie 38 julie.laurent@example.com 0032 193249 Belgique
Robert Chloé 36 chloé.robert@example.com 0032 591489 Belgique
Robert Louise 19 louise.robert@example.com 0032 835760 Belgique
Simon Camille 31 camille.simon@example.com 0032 752781 Belgique