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
Martin Pauline 20 pauline.martin@example.com 00352 952431 Luxembourg
Moreau Louise 28 louise.moreau@example.com 00352 722275 Luxembourg
Richard Louise 23 louise.richard@example.com 00352 698037 Luxembourg
Thomas Chloé 29 chloé.thomas@example.com 00352 489845 Luxembourg
Dubois Pauline 21 pauline.dubois@example.com 00352 160595 Luxembourg
Simon Pauline 18 pauline.simon@example.com 00352 789673 Luxembourg
Dubois Emilie 20 emilie.dubois@example.com 00352 733178 Luxembourg
Martin Louise 44 louise.martin@example.com 00352 244012 Luxembourg
Durand Louise 29 louise.durand@example.com 00352 232672 Luxembourg
Dubois Mathilde 28 mathilde.dubois@example.com 00352 073962 Luxembourg
Dubois Pauline 31 pauline.dubois@example.com 00352 724885 Luxembourg
Thomas Amélie 35 amélie.thomas@example.com 00352 565434 Luxembourg
Dubois Amélie 43 amélie.dubois@example.com 00352 861968 Luxembourg
Petit Louise 21 louise.petit@example.com 00352 886631 Luxembourg
Martin Victoire 32 victoire.martin@example.com 00352 438368 Luxembourg
Laurent Emilie 26 emilie.laurent@example.com 00352 177411 Luxembourg
Dubois Camille 32 camille.dubois@example.com 00352 530073 Luxembourg
Dubois Emilie 24 emilie.dubois@example.com 0033 605349 France
Dubois Amélie 43 amélie.dubois@example.com 0033 132740 France
Laurent Léa 42 léa.laurent@example.com 0033 434775 France
Martin Camille 32 camille.martin@example.com 0033 026863 France
Durand Mathilde 36 mathilde.durand@example.com 0033 173574 France
Dubois Louise 38 louise.dubois@example.com 0033 977279 France
Dubois Mathilde 43 mathilde.dubois@example.com 0033 775717 France
Robert Camille 34 camille.robert@example.com 0033 664539 France
Laurent Mathilde 30 mathilde.laurent@example.com 0033 721023 France
Dubois Pauline 30 pauline.dubois@example.com 0033 841253 France
Martin Pauline 34 pauline.martin@example.com 0033 266236 France
Thomas Emilie 24 emilie.thomas@example.com 0033 236678 France
Durand Louise 19 louise.durand@example.com 0033 878399 France
Petit Camille 30 camille.petit@example.com 0033 029912 France
Martin Julie 18 julie.martin@example.com 0033 454191 France
Robert Mathilde 42 mathilde.robert@example.com 0033 483589 France
Petit Amélie 32 amélie.petit@example.com 0033 035109 France
Dubois Louise 45 louise.dubois@example.com 0033 732858 France
Durand Julie 32 julie.durand@example.com 0033 219288 France
Laurent Mathilde 18 mathilde.laurent@example.com 0032 976806 Belgique
Moreau Léa 41 léa.moreau@example.com 0032 980207 Belgique
Durand Camille 25 camille.durand@example.com 0032 043243 Belgique
Laurent Pauline 34 pauline.laurent@example.com 0032 118631 Belgique
Martin Pauline 35 pauline.martin@example.com 0032 999727 Belgique
Dubois Victoire 23 victoire.dubois@example.com 0032 446781 Belgique
Martin Amélie 43 amélie.martin@example.com 0032 173948 Belgique
Laurent Camille 44 camille.laurent@example.com 0032 391251 Belgique
Martin Camille 25 camille.martin@example.com 0032 777789 Belgique
Robert Emilie 27 emilie.robert@example.com 0032 811852 Belgique
Laurent Victoire 40 victoire.laurent@example.com 0032 122104 Belgique
Laurent Chloé 23 chloé.laurent@example.com 0032 175020 Belgique
Thomas Pauline 32 pauline.thomas@example.com 0032 532320 Belgique
Robert Victoire 33 victoire.robert@example.com 0032 738184 Belgique