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
Petit Emilie 32 emilie.petit@example.com 00352 988520 Luxembourg
Petit Chloé 32 chloé.petit@example.com 00352 988247 Luxembourg
Thomas Chloé 45 chloé.thomas@example.com 00352 909984 Luxembourg
Laurent Victoire 19 victoire.laurent@example.com 00352 846297 Luxembourg
Richard Julie 23 julie.richard@example.com 00352 844696 Luxembourg
Thomas Camille 27 camille.thomas@example.com 00352 763932 Luxembourg
Simon Louise 31 louise.simon@example.com 00352 668498 Luxembourg
Martin Chloé 34 chloé.martin@example.com 00352 581877 Luxembourg
Robert Camille 19 camille.robert@example.com 00352 507136 Luxembourg
Laurent Julie 23 julie.laurent@example.com 00352 487355 Luxembourg
Thomas Victoire 40 victoire.thomas@example.com 00352 459790 Luxembourg
Robert Chloé 31 chloé.robert@example.com 00352 318748 Luxembourg
Durand Chloé 43 chloé.durand@example.com 00352 267801 Luxembourg
Petit Julie 40 julie.petit@example.com 00352 254353 Luxembourg
Martin Chloé 32 chloé.martin@example.com 00352 166708 Luxembourg
Richard Chloé 29 chloé.richard@example.com 00352 036444 Luxembourg
Laurent Emilie 38 emilie.laurent@example.com 00352 018899 Luxembourg
Thomas Mathilde 32 mathilde.thomas@example.com 00352 003400 Luxembourg
Robert Emilie 40 emilie.robert@example.com 0033 921175 France
Thomas Louise 18 louise.thomas@example.com 0033 911206 France
Thomas Louise 30 louise.thomas@example.com 0033 909293 France
Thomas Julie 23 julie.thomas@example.com 0033 887203 France
Petit Chloé 27 chloé.petit@example.com 0033 842992 France
Laurent Victoire 28 victoire.laurent@example.com 0033 821926 France
Martin Emilie 38 emilie.martin@example.com 0033 710893 France
Richard Emilie 18 emilie.richard@example.com 0033 673429 France
Richard Louise 24 louise.richard@example.com 0033 664586 France
Dubois Emilie 25 emilie.dubois@example.com 0033 621832 France
Simon Amélie 42 amélie.simon@example.com 0033 536308 France
Petit Emilie 40 emilie.petit@example.com 0033 519312 France
Durand Victoire 41 victoire.durand@example.com 0033 484682 France
Durand Victoire 41 victoire.durand@example.com 0033 405490 France
Petit Emilie 38 emilie.petit@example.com 0033 328763 France
Laurent Pauline 33 pauline.laurent@example.com 0033 201528 France
Dubois Julie 24 julie.dubois@example.com 0033 055658 France
Robert Camille 37 camille.robert@example.com 0032 967880 Belgique
Simon Chloé 32 chloé.simon@example.com 0032 830970 Belgique
Thomas Amélie 38 amélie.thomas@example.com 0032 812242 Belgique
Robert Julie 37 julie.robert@example.com 0032 758280 Belgique
Petit Camille 19 camille.petit@example.com 0032 746907 Belgique
Petit Camille 42 camille.petit@example.com 0032 726752 Belgique
Dubois Mathilde 34 mathilde.dubois@example.com 0032 692602 Belgique
Simon Mathilde 23 mathilde.simon@example.com 0032 556009 Belgique
Durand Pauline 28 pauline.durand@example.com 0032 550188 Belgique
Petit Julie 35 julie.petit@example.com 0032 479331 Belgique
Dubois Mathilde 19 mathilde.dubois@example.com 0032 464228 Belgique
Petit Emilie 18 emilie.petit@example.com 0032 458620 Belgique
Thomas Mathilde 29 mathilde.thomas@example.com 0032 289619 Belgique
Richard Léa 40 léa.richard@example.com 0032 091119 Belgique
Martin Chloé 36 chloé.martin@example.com 0032 068164 Belgique