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 Chloé 26 chloé.dubois@example.com 00352 284123 Luxembourg
Richard Léa 21 léa.richard@example.com 00352 638178 Luxembourg
Petit Amélie 41 amélie.petit@example.com 00352 471701 Luxembourg
Thomas Victoire 42 victoire.thomas@example.com 00352 408166 Luxembourg
Richard Mathilde 21 mathilde.richard@example.com 00352 870741 Luxembourg
Petit Mathilde 35 mathilde.petit@example.com 00352 852682 Luxembourg
Dubois Léa 25 léa.dubois@example.com 00352 609020 Luxembourg
Martin Louise 33 louise.martin@example.com 00352 304877 Luxembourg
Thomas Léa 36 léa.thomas@example.com 00352 201140 Luxembourg
Simon Louise 39 louise.simon@example.com 00352 518134 Luxembourg
Robert Julie 30 julie.robert@example.com 00352 257882 Luxembourg
Laurent Emilie 31 emilie.laurent@example.com 00352 619453 Luxembourg
Laurent Mathilde 35 mathilde.laurent@example.com 00352 437336 Luxembourg
Petit Amélie 19 amélie.petit@example.com 00352 746763 Luxembourg
Petit Emilie 25 emilie.petit@example.com 00352 745811 Luxembourg
Thomas Julie 23 julie.thomas@example.com 00352 059363 Luxembourg
Laurent Amélie 29 amélie.laurent@example.com 00352 027491 Luxembourg
Martin Louise 22 louise.martin@example.com 00352 623838 Luxembourg
Simon Julie 37 julie.simon@example.com 00352 960540 Luxembourg
Moreau Pauline 38 pauline.moreau@example.com 00352 743529 Luxembourg
Laurent Julie 43 julie.laurent@example.com 0033 865430 France
Simon Camille 27 camille.simon@example.com 0033 611365 France
Thomas Mathilde 24 mathilde.thomas@example.com 0033 681140 France
Martin Mathilde 24 mathilde.martin@example.com 0033 809930 France
Durand Léa 28 léa.durand@example.com 0033 616857 France
Moreau Mathilde 30 mathilde.moreau@example.com 0033 572691 France
Richard Pauline 43 pauline.richard@example.com 0033 829485 France
Laurent Mathilde 24 mathilde.laurent@example.com 0033 041723 France
Dubois Emilie 27 emilie.dubois@example.com 0033 677187 France
Simon Pauline 39 pauline.simon@example.com 0033 820848 France
Durand Julie 32 julie.durand@example.com 0033 322368 France
Robert Victoire 29 victoire.robert@example.com 0033 422112 France
Simon Léa 19 léa.simon@example.com 0033 310216 France
Martin Léa 39 léa.martin@example.com 0033 936190 France
Simon Julie 18 julie.simon@example.com 0033 496954 France
Durand Victoire 23 victoire.durand@example.com 0033 447074 France
Laurent Mathilde 19 mathilde.laurent@example.com 0033 147861 France
Laurent Pauline 18 pauline.laurent@example.com 0033 849689 France
Moreau Camille 40 camille.moreau@example.com 0032 052618 Belgique
Dubois Louise 39 louise.dubois@example.com 0032 360438 Belgique
Simon Emilie 24 emilie.simon@example.com 0032 795985 Belgique
Moreau Victoire 36 victoire.moreau@example.com 0032 343951 Belgique
Petit Amélie 34 amélie.petit@example.com 0032 784894 Belgique
Thomas Louise 45 louise.thomas@example.com 0032 199633 Belgique
Thomas Léa 41 léa.thomas@example.com 0032 135627 Belgique
Robert Pauline 41 pauline.robert@example.com 0032 118102 Belgique
Richard Amélie 20 amélie.richard@example.com 0032 105952 Belgique
Richard Louise 42 louise.richard@example.com 0032 318757 Belgique
Petit Camille 37 camille.petit@example.com 0032 556453 Belgique
Simon Pauline 19 pauline.simon@example.com 0032 544889 Belgique