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
Durand Victoire 31 victoire.durand@example.com 00352 675708 Luxembourg
Moreau Victoire 38 victoire.moreau@example.com 0032 861747 Belgique
Durand Victoire 41 victoire.durand@example.com 0032 534479 Belgique
Durand Pauline 45 pauline.durand@example.com 00352 632633 Luxembourg
Moreau Pauline 30 pauline.moreau@example.com 0032 938870 Belgique
Martin Mathilde 39 mathilde.martin@example.com 0033 183675 France
Dubois Mathilde 26 mathilde.dubois@example.com 00352 969558 Luxembourg
Robert Mathilde 36 mathilde.robert@example.com 00352 703651 Luxembourg
Moreau Mathilde 36 mathilde.moreau@example.com 0032 036497 Belgique
Laurent Mathilde 19 mathilde.laurent@example.com 00352 443068 Luxembourg
Simon Mathilde 27 mathilde.simon@example.com 0033 474075 France
Dubois Léa 18 léa.dubois@example.com 0032 479439 Belgique
Robert Léa 20 léa.robert@example.com 00352 863653 Luxembourg
Thomas Léa 37 léa.thomas@example.com 00352 161372 Luxembourg
Simon Léa 35 léa.simon@example.com 00352 108718 Luxembourg
Thomas Léa 45 léa.thomas@example.com 0033 763857 France
Richard Léa 32 léa.richard@example.com 0033 509353 France
Simon Louise 37 louise.simon@example.com 0032 293385 Belgique
Moreau Louise 22 louise.moreau@example.com 0032 654194 Belgique
Durand Louise 38 louise.durand@example.com 0032 141686 Belgique
Robert Louise 36 louise.robert@example.com 0033 013068 France
Durand Louise 38 louise.durand@example.com 00352 665813 Luxembourg
Simon Louise 29 louise.simon@example.com 0033 314978 France
Robert Louise 34 louise.robert@example.com 0033 971318 France
Martin Julie 37 julie.martin@example.com 0033 379965 France
Laurent Julie 39 julie.laurent@example.com 0032 649046 Belgique
Simon Julie 25 julie.simon@example.com 00352 537162 Luxembourg
Durand Julie 42 julie.durand@example.com 0033 360263 France
Petit Julie 33 julie.petit@example.com 00352 414116 Luxembourg
Durand Julie 19 julie.durand@example.com 00352 486653 Luxembourg
Simon Julie 27 julie.simon@example.com 0032 271424 Belgique
Dubois Emilie 18 emilie.dubois@example.com 0033 932355 France
Dubois Emilie 42 emilie.dubois@example.com 0033 404895 France
Dubois Chloé 27 chloé.dubois@example.com 0033 682760 France
Thomas Chloé 18 chloé.thomas@example.com 0033 700262 France
Moreau Chloé 27 chloé.moreau@example.com 0033 323885 France
Petit Chloé 23 chloé.petit@example.com 00352 110940 Luxembourg
Moreau Chloé 26 chloé.moreau@example.com 0033 162431 France
Laurent Camille 26 camille.laurent@example.com 0032 451036 Belgique
Martin Camille 24 camille.martin@example.com 00352 726374 Luxembourg
Petit Camille 20 camille.petit@example.com 00352 543622 Luxembourg
Petit Camille 35 camille.petit@example.com 0032 346215 Belgique
Robert Camille 32 camille.robert@example.com 00352 516269 Luxembourg
Dubois Camille 20 camille.dubois@example.com 0033 636600 France
Durand Camille 33 camille.durand@example.com 0032 650377 Belgique
Simon Camille 29 camille.simon@example.com 0032 456772 Belgique
Robert Camille 31 camille.robert@example.com 0032 990448 Belgique
Robert Amélie 44 amélie.robert@example.com 0032 720288 Belgique
Simon Amélie 33 amélie.simon@example.com 0032 440002 Belgique
Martin Amélie 33 amélie.martin@example.com 0032 942558 Belgique