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 Louise 31 louise.thomas@example.com 00352 153963 Luxembourg
Thomas Victoire 31 victoire.thomas@example.com 00352 183735 Luxembourg
Robert Julie 45 julie.robert@example.com 00352 443302 Luxembourg
Robert Camille 37 camille.robert@example.com 00352 361020 Luxembourg
Thomas Pauline 40 pauline.thomas@example.com 00352 095510 Luxembourg
Richard Camille 21 camille.richard@example.com 00352 586619 Luxembourg
Thomas Julie 18 julie.thomas@example.com 00352 769688 Luxembourg
Dubois Louise 42 louise.dubois@example.com 00352 281728 Luxembourg
Durand Mathilde 44 mathilde.durand@example.com 00352 994490 Luxembourg
Petit Julie 27 julie.petit@example.com 00352 138507 Luxembourg
Martin Camille 42 camille.martin@example.com 00352 685084 Luxembourg
Laurent Emilie 24 emilie.laurent@example.com 00352 402809 Luxembourg
Moreau Pauline 30 pauline.moreau@example.com 00352 168554 Luxembourg
Simon Léa 45 léa.simon@example.com 00352 097914 Luxembourg
Martin Julie 36 julie.martin@example.com 0033 624446 France
Richard Victoire 33 victoire.richard@example.com 0033 737166 France
Simon Pauline 45 pauline.simon@example.com 0033 775930 France
Moreau Emilie 45 emilie.moreau@example.com 0033 511613 France
Petit Mathilde 26 mathilde.petit@example.com 0033 603915 France
Dubois Mathilde 25 mathilde.dubois@example.com 0033 993479 France
Laurent Julie 24 julie.laurent@example.com 0033 971656 France
Moreau Emilie 30 emilie.moreau@example.com 0033 859701 France
Dubois Louise 25 louise.dubois@example.com 0033 104042 France
Robert Louise 33 louise.robert@example.com 0033 960243 France
Moreau Julie 29 julie.moreau@example.com 0033 424672 France
Richard Chloé 39 chloé.richard@example.com 0033 160560 France
Moreau Chloé 35 chloé.moreau@example.com 0033 064015 France
Martin Chloé 35 chloé.martin@example.com 0032 009077 Belgique
Dubois Mathilde 26 mathilde.dubois@example.com 0032 531133 Belgique
Moreau Léa 35 léa.moreau@example.com 0032 826148 Belgique
Richard Chloé 33 chloé.richard@example.com 0032 540741 Belgique
Laurent Léa 25 léa.laurent@example.com 0032 010788 Belgique
Laurent Victoire 41 victoire.laurent@example.com 0032 219887 Belgique
Durand Emilie 30 emilie.durand@example.com 0032 404023 Belgique
Laurent Pauline 36 pauline.laurent@example.com 0032 739851 Belgique
Martin Léa 24 léa.martin@example.com 0032 961763 Belgique
Moreau Camille 27 camille.moreau@example.com 0032 620489 Belgique
Martin Louise 40 louise.martin@example.com 0032 149629 Belgique
Dubois Amélie 42 amélie.dubois@example.com 0032 252380 Belgique
Dubois Emilie 24 emilie.dubois@example.com 0032 400267 Belgique
Richard Mathilde 42 mathilde.richard@example.com 0032 141379 Belgique
Martin Mathilde 33 mathilde.martin@example.com 0032 389461 Belgique
Dubois Camille 18 camille.dubois@example.com 0032 091466 Belgique
Thomas Victoire 37 victoire.thomas@example.com 0032 712419 Belgique
Dubois Julie 18 julie.dubois@example.com 0032 356678 Belgique
Martin Léa 41 léa.martin@example.com 0032 985391 Belgique
Moreau Emilie 43 emilie.moreau@example.com 0032 932750 Belgique
Dubois Pauline 35 pauline.dubois@example.com 0032 635081 Belgique
Petit Amélie 22 amélie.petit@example.com 0032 604907 Belgique
Richard Chloé 40 chloé.richard@example.com 0032 399567 Belgique