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 Pauline 21 pauline.durand@example.com 0032 967952 Belgique
Dubois Victoire 28 victoire.dubois@example.com 0032 453250 Belgique
Simon Julie 45 julie.simon@example.com 0032 245497 Belgique
Moreau Camille 18 camille.moreau@example.com 0032 592277 Belgique
Martin Léa 29 léa.martin@example.com 0032 571222 Belgique
Durand Julie 32 julie.durand@example.com 0032 232514 Belgique
Petit Julie 23 julie.petit@example.com 0032 378812 Belgique
Simon Pauline 43 pauline.simon@example.com 0032 894567 Belgique
Petit Chloé 44 chloé.petit@example.com 0032 344074 Belgique
Moreau Amélie 21 amélie.moreau@example.com 0032 986484 Belgique
Richard Julie 38 julie.richard@example.com 0032 462048 Belgique
Moreau Léa 40 léa.moreau@example.com 0032 675528 Belgique
Robert Chloé 44 chloé.robert@example.com 0032 852304 Belgique
Moreau Mathilde 24 mathilde.moreau@example.com 0032 170970 Belgique
Laurent Julie 39 julie.laurent@example.com 0032 689381 Belgique
Petit Victoire 39 victoire.petit@example.com 0033 816877 France
Simon Amélie 27 amélie.simon@example.com 0033 226347 France
Durand Léa 37 léa.durand@example.com 0033 811429 France
Richard Julie 39 julie.richard@example.com 0033 469316 France
Petit Camille 29 camille.petit@example.com 0033 647368 France
Moreau Victoire 45 victoire.moreau@example.com 0033 035083 France
Durand Emilie 41 emilie.durand@example.com 0033 401534 France
Laurent Léa 44 léa.laurent@example.com 0033 066760 France
Petit Amélie 41 amélie.petit@example.com 0033 369938 France
Simon Chloé 21 chloé.simon@example.com 0033 539915 France
Robert Chloé 20 chloé.robert@example.com 0033 806086 France
Thomas Léa 41 léa.thomas@example.com 0033 478196 France
Thomas Victoire 29 victoire.thomas@example.com 0033 497510 France
Dubois Camille 34 camille.dubois@example.com 0033 376878 France
Richard Chloé 27 chloé.richard@example.com 0033 228893 France
Simon Léa 41 léa.simon@example.com 0033 702855 France
Martin Louise 26 louise.martin@example.com 0033 530056 France
Martin Camille 40 camille.martin@example.com 0033 293245 France
Moreau Léa 33 léa.moreau@example.com 00352 068728 Luxembourg
Robert Pauline 23 pauline.robert@example.com 00352 565999 Luxembourg
Martin Victoire 23 victoire.martin@example.com 00352 189122 Luxembourg
Laurent Camille 37 camille.laurent@example.com 00352 686682 Luxembourg
Laurent Léa 32 léa.laurent@example.com 00352 935187 Luxembourg
Durand Mathilde 38 mathilde.durand@example.com 00352 973063 Luxembourg
Dubois Mathilde 33 mathilde.dubois@example.com 00352 775402 Luxembourg
Laurent Amélie 28 amélie.laurent@example.com 00352 320577 Luxembourg
Simon Léa 36 léa.simon@example.com 00352 413893 Luxembourg
Richard Chloé 29 chloé.richard@example.com 00352 129126 Luxembourg
Simon Pauline 18 pauline.simon@example.com 00352 488152 Luxembourg
Richard Chloé 25 chloé.richard@example.com 00352 179704 Luxembourg
Thomas Victoire 37 victoire.thomas@example.com 00352 850325 Luxembourg
Laurent Louise 40 louise.laurent@example.com 00352 795618 Luxembourg
Durand Amélie 38 amélie.durand@example.com 00352 290573 Luxembourg
Richard Emilie 30 emilie.richard@example.com 00352 719896 Luxembourg
Laurent Amélie 32 amélie.laurent@example.com 00352 657699 Luxembourg