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 Emilie 45 emilie.moreau@example.com 00352 866239 Luxembourg
Simon Mathilde 20 mathilde.simon@example.com 00352 847324 Luxembourg
Simon Camille 22 camille.simon@example.com 00352 834903 Luxembourg
Richard Louise 39 louise.richard@example.com 00352 826940 Luxembourg
Moreau Chloé 30 chloé.moreau@example.com 00352 799457 Luxembourg
Petit Mathilde 39 mathilde.petit@example.com 00352 749059 Luxembourg
Laurent Julie 22 julie.laurent@example.com 00352 608948 Luxembourg
Martin Louise 18 louise.martin@example.com 00352 581592 Luxembourg
Richard Chloé 43 chloé.richard@example.com 00352 528842 Luxembourg
Simon Louise 34 louise.simon@example.com 00352 450496 Luxembourg
Laurent Mathilde 36 mathilde.laurent@example.com 00352 406530 Luxembourg
Laurent Chloé 42 chloé.laurent@example.com 00352 317429 Luxembourg
Martin Chloé 32 chloé.martin@example.com 00352 261438 Luxembourg
Simon Léa 39 léa.simon@example.com 00352 186276 Luxembourg
Petit Amélie 33 amélie.petit@example.com 00352 176967 Luxembourg
Moreau Mathilde 25 mathilde.moreau@example.com 00352 135081 Luxembourg
Moreau Julie 36 julie.moreau@example.com 00352 120082 Luxembourg
Durand Emilie 30 emilie.durand@example.com 00352 025936 Luxembourg
Robert Mathilde 23 mathilde.robert@example.com 0033 880661 France
Petit Victoire 22 victoire.petit@example.com 0033 864353 France
Simon Léa 34 léa.simon@example.com 0033 862381 France
Petit Léa 28 léa.petit@example.com 0033 852434 France
Martin Emilie 45 emilie.martin@example.com 0033 823190 France
Richard Julie 43 julie.richard@example.com 0033 813097 France
Richard Chloé 45 chloé.richard@example.com 0033 758346 France
Dubois Camille 18 camille.dubois@example.com 0033 751963 France
Martin Léa 20 léa.martin@example.com 0033 715731 France
Durand Pauline 33 pauline.durand@example.com 0033 565457 France
Laurent Julie 24 julie.laurent@example.com 0033 546792 France
Laurent Amélie 31 amélie.laurent@example.com 0033 522836 France
Durand Louise 23 louise.durand@example.com 0033 469039 France
Laurent Léa 31 léa.laurent@example.com 0033 462648 France
Robert Mathilde 20 mathilde.robert@example.com 0033 404086 France
Martin Pauline 34 pauline.martin@example.com 0033 399517 France
Durand Pauline 42 pauline.durand@example.com 0033 273799 France
Petit Emilie 43 emilie.petit@example.com 0032 881823 Belgique
Dubois Pauline 18 pauline.dubois@example.com 0032 817839 Belgique
Laurent Chloé 45 chloé.laurent@example.com 0032 803069 Belgique
Robert Camille 36 camille.robert@example.com 0032 746087 Belgique
Dubois Mathilde 33 mathilde.dubois@example.com 0032 633681 Belgique
Martin Amélie 32 amélie.martin@example.com 0032 614620 Belgique
Dubois Louise 28 louise.dubois@example.com 0032 584529 Belgique
Dubois Chloé 40 chloé.dubois@example.com 0032 573613 Belgique
Richard Léa 38 léa.richard@example.com 0032 534087 Belgique
Moreau Louise 39 louise.moreau@example.com 0032 512973 Belgique
Simon Julie 35 julie.simon@example.com 0032 469760 Belgique
Moreau Pauline 27 pauline.moreau@example.com 0032 218218 Belgique
Richard Louise 45 louise.richard@example.com 0032 202116 Belgique
Petit Pauline 44 pauline.petit@example.com 0032 108300 Belgique
Simon Victoire 40 victoire.simon@example.com 0032 057810 Belgique