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 Amélie 20 amélie.dubois@example.com 0032 748529 Belgique
Laurent Amélie 22 amélie.laurent@example.com 0033 792229 France
Moreau Amélie 22 amélie.moreau@example.com 00352 822028 Luxembourg
Durand Camille 33 camille.durand@example.com 00352 559665 Luxembourg
Laurent Camille 43 camille.laurent@example.com 0033 746838 France
Martin Camille 33 camille.martin@example.com 00352 028816 Luxembourg
Moreau Camille 24 camille.moreau@example.com 00352 788763 Luxembourg
Richard Camille 31 camille.richard@example.com 00352 789461 Luxembourg
Richard Camille 40 camille.richard@example.com 00352 641948 Luxembourg
Thomas Camille 42 camille.thomas@example.com 0033 664315 France
Durand Chloé 18 chloé.durand@example.com 00352 451128 Luxembourg
Richard Chloé 21 chloé.richard@example.com 00352 640573 Luxembourg
Simon Chloé 35 chloé.simon@example.com 0033 435798 France
Dubois Julie 45 julie.dubois@example.com 0032 989532 Belgique
Durand Julie 45 julie.durand@example.com 0033 520521 France
Laurent Julie 29 julie.laurent@example.com 0033 296252 France
Laurent Julie 31 julie.laurent@example.com 00352 308085 Luxembourg
Laurent Julie 34 julie.laurent@example.com 00352 042946 Luxembourg
Moreau Julie 25 julie.moreau@example.com 00352 120371 Luxembourg
Simon Julie 39 julie.simon@example.com 0033 754730 France
Simon Julie 20 julie.simon@example.com 0032 842957 Belgique
Simon Julie 34 julie.simon@example.com 00352 711573 Luxembourg
Laurent Louise 24 louise.laurent@example.com 00352 474399 Luxembourg
Laurent Louise 31 louise.laurent@example.com 00352 290627 Luxembourg
Moreau Louise 37 louise.moreau@example.com 0033 061909 France
Robert Louise 39 louise.robert@example.com 00352 597291 Luxembourg
Robert Louise 37 louise.robert@example.com 00352 655306 Luxembourg
Simon Louise 19 louise.simon@example.com 0033 648738 France
Simon Louise 36 louise.simon@example.com 00352 824703 Luxembourg
Thomas Louise 41 louise.thomas@example.com 0032 115753 Belgique
Thomas Louise 23 louise.thomas@example.com 00352 628793 Luxembourg
Dubois Léa 38 léa.dubois@example.com 00352 630559 Luxembourg
Dubois Léa 28 léa.dubois@example.com 0033 796060 France
Laurent Léa 29 léa.laurent@example.com 0032 335726 Belgique
Martin Léa 26 léa.martin@example.com 0032 429587 Belgique
Simon Léa 29 léa.simon@example.com 00352 595154 Luxembourg
Thomas Léa 31 léa.thomas@example.com 00352 799909 Luxembourg
Martin Mathilde 41 mathilde.martin@example.com 00352 838693 Luxembourg
Petit Mathilde 30 mathilde.petit@example.com 0032 789535 Belgique
Simon Mathilde 31 mathilde.simon@example.com 0033 340399 France
Thomas Mathilde 42 mathilde.thomas@example.com 0033 783977 France
Richard Pauline 24 pauline.richard@example.com 0033 430069 France
Thomas Pauline 21 pauline.thomas@example.com 0033 992308 France
Durand Victoire 19 victoire.durand@example.com 0032 268176 Belgique
Durand Victoire 29 victoire.durand@example.com 00352 963585 Luxembourg
Moreau Victoire 34 victoire.moreau@example.com 00352 075065 Luxembourg
Moreau Victoire 38 victoire.moreau@example.com 00352 054428 Luxembourg
Richard Victoire 36 victoire.richard@example.com 0033 939014 France
Richard Victoire 41 victoire.richard@example.com 0033 829791 France
Simon Victoire 38 victoire.simon@example.com 00352 680251 Luxembourg