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
Thomas Julie 36 julie.thomas@example.com 0032 295376 Belgique
Thomas Chloé 29 chloé.thomas@example.com 0033 771672 France
Thomas Victoire 27 victoire.thomas@example.com 0033 704183 France
Thomas Louise 28 louise.thomas@example.com 0033 589506 France
Thomas Chloé 32 chloé.thomas@example.com 0032 274169 Belgique
Thomas Pauline 21 pauline.thomas@example.com 00352 822734 Luxembourg
Thomas Victoire 31 victoire.thomas@example.com 0033 614442 France
Thomas Amélie 22 amélie.thomas@example.com 00352 148666 Luxembourg
Simon Victoire 30 victoire.simon@example.com 0032 593111 Belgique
Simon Amélie 32 amélie.simon@example.com 00352 824950 Luxembourg
Robert Victoire 26 victoire.robert@example.com 00352 329088 Luxembourg
Robert Julie 23 julie.robert@example.com 0033 583650 France
Robert Amélie 30 amélie.robert@example.com 00352 221893 Luxembourg
Richard Victoire 44 victoire.richard@example.com 0033 801608 France
Richard Pauline 36 pauline.richard@example.com 0033 610656 France
Richard Pauline 39 pauline.richard@example.com 0032 975657 Belgique
Richard Léa 42 léa.richard@example.com 00352 484459 Luxembourg
Richard Léa 41 léa.richard@example.com 0033 343051 France
Richard Emilie 37 emilie.richard@example.com 00352 789978 Luxembourg
Richard Amélie 37 amélie.richard@example.com 00352 587235 Luxembourg
Richard Camille 37 camille.richard@example.com 00352 341652 Luxembourg
Petit Julie 19 julie.petit@example.com 0032 572827 Belgique
Petit Camille 31 camille.petit@example.com 0032 941776 Belgique
Petit Julie 39 julie.petit@example.com 00352 390529 Luxembourg
Petit Emilie 31 emilie.petit@example.com 00352 958183 Luxembourg
Petit Mathilde 19 mathilde.petit@example.com 00352 211905 Luxembourg
Petit Chloé 43 chloé.petit@example.com 0032 685538 Belgique
Petit Emilie 26 emilie.petit@example.com 0033 352639 France
Moreau Mathilde 35 mathilde.moreau@example.com 00352 001473 Luxembourg
Moreau Léa 18 léa.moreau@example.com 0033 826711 France
Moreau Amélie 29 amélie.moreau@example.com 0032 572331 Belgique
Moreau Emilie 22 emilie.moreau@example.com 00352 769750 Luxembourg
Martin Julie 26 julie.martin@example.com 0032 433984 Belgique
Martin Amélie 37 amélie.martin@example.com 0033 285238 France
Martin Emilie 23 emilie.martin@example.com 00352 155856 Luxembourg
Martin Louise 33 louise.martin@example.com 0032 418589 Belgique
Martin Amélie 44 amélie.martin@example.com 00352 838264 Luxembourg
Martin Pauline 26 pauline.martin@example.com 00352 764381 Luxembourg
Laurent Emilie 25 emilie.laurent@example.com 0032 192964 Belgique
Laurent Julie 42 julie.laurent@example.com 00352 347901 Luxembourg
Laurent Emilie 36 emilie.laurent@example.com 00352 425256 Luxembourg
Laurent Chloé 24 chloé.laurent@example.com 0033 631111 France
Durand Julie 25 julie.durand@example.com 00352 613460 Luxembourg
Durand Victoire 30 victoire.durand@example.com 0033 623912 France
Durand Chloé 31 chloé.durand@example.com 0032 983196 Belgique
Durand Victoire 32 victoire.durand@example.com 0032 887910 Belgique
Dubois Louise 29 louise.dubois@example.com 00352 697331 Luxembourg
Dubois Camille 19 camille.dubois@example.com 0033 814106 France
Dubois Victoire 20 victoire.dubois@example.com 00352 126347 Luxembourg
Dubois Pauline 20 pauline.dubois@example.com 0033 846155 France