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 Julie 21 julie.durand@example.com 00352 636957 Luxembourg
Richard Louise 21 louise.richard@example.com 00352 585567 Luxembourg
Laurent Louise 25 louise.laurent@example.com 00352 538698 Luxembourg
Martin Louise 39 louise.martin@example.com 00352 830886 Luxembourg
Simon Pauline 29 pauline.simon@example.com 00352 048367 Luxembourg
Laurent Louise 30 louise.laurent@example.com 00352 402770 Luxembourg
Martin Pauline 31 pauline.martin@example.com 00352 816647 Luxembourg
Petit Léa 40 léa.petit@example.com 00352 956014 Luxembourg
Thomas Julie 22 julie.thomas@example.com 00352 639808 Luxembourg
Richard Amélie 19 amélie.richard@example.com 00352 776364 Luxembourg
Laurent Emilie 25 emilie.laurent@example.com 00352 904464 Luxembourg
Dubois Amélie 42 amélie.dubois@example.com 00352 601198 Luxembourg
Richard Léa 45 léa.richard@example.com 00352 284901 Luxembourg
Laurent Emilie 25 emilie.laurent@example.com 00352 391115 Luxembourg
Martin Emilie 24 emilie.martin@example.com 0033 203150 France
Dubois Pauline 44 pauline.dubois@example.com 0033 220006 France
Durand Chloé 20 chloé.durand@example.com 0033 711862 France
Simon Mathilde 35 mathilde.simon@example.com 0033 405377 France
Richard Emilie 19 emilie.richard@example.com 0033 212626 France
Laurent Amélie 33 amélie.laurent@example.com 0033 275732 France
Martin Pauline 36 pauline.martin@example.com 0033 953661 France
Richard Chloé 32 chloé.richard@example.com 0033 760633 France
Thomas Léa 37 léa.thomas@example.com 0033 455905 France
Petit Mathilde 25 mathilde.petit@example.com 0033 886872 France
Simon Chloé 42 chloé.simon@example.com 0033 118191 France
Durand Mathilde 25 mathilde.durand@example.com 0033 161295 France
Laurent Louise 45 louise.laurent@example.com 0033 435759 France
Simon Pauline 27 pauline.simon@example.com 0033 886830 France
Simon Pauline 21 pauline.simon@example.com 0032 712986 Belgique
Petit Julie 39 julie.petit@example.com 0032 866661 Belgique
Durand Victoire 31 victoire.durand@example.com 0032 717205 Belgique
Dubois Louise 44 louise.dubois@example.com 0032 392763 Belgique
Petit Pauline 23 pauline.petit@example.com 0032 707679 Belgique
Petit Pauline 43 pauline.petit@example.com 0032 872602 Belgique
Petit Camille 38 camille.petit@example.com 0032 718298 Belgique
Robert Louise 29 louise.robert@example.com 0032 784748 Belgique
Petit Mathilde 30 mathilde.petit@example.com 0032 036569 Belgique
Laurent Léa 23 léa.laurent@example.com 0032 252612 Belgique
Richard Pauline 45 pauline.richard@example.com 0032 514014 Belgique
Durand Louise 20 louise.durand@example.com 0032 521871 Belgique
Laurent Julie 35 julie.laurent@example.com 0032 344791 Belgique
Martin Emilie 21 emilie.martin@example.com 0032 528582 Belgique
Martin Chloé 35 chloé.martin@example.com 0032 629357 Belgique
Petit Chloé 37 chloé.petit@example.com 0032 945301 Belgique
Robert Mathilde 21 mathilde.robert@example.com 0032 148557 Belgique
Petit Emilie 38 emilie.petit@example.com 0032 068772 Belgique
Petit Emilie 32 emilie.petit@example.com 0032 603928 Belgique
Durand Léa 28 léa.durand@example.com 0032 903865 Belgique
Durand Louise 19 louise.durand@example.com 0032 926800 Belgique
Laurent Louise 27 louise.laurent@example.com 0032 839231 Belgique