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
Simon Victoire 32 victoire.simon@example.com 00352 090774 Luxembourg
Richard Victoire 36 victoire.richard@example.com 00352 453281 Luxembourg
Martin Victoire 33 victoire.martin@example.com 00352 516449 Luxembourg
Martin Victoire 43 victoire.martin@example.com 00352 655195 Luxembourg
Dubois Victoire 29 victoire.dubois@example.com 00352 040284 Luxembourg
Simon Pauline 34 pauline.simon@example.com 0033 606245 France
Robert Pauline 39 pauline.robert@example.com 0032 230533 Belgique
Petit Pauline 18 pauline.petit@example.com 0033 816566 France
Martin Pauline 29 pauline.martin@example.com 0033 469058 France
Laurent Pauline 38 pauline.laurent@example.com 0033 901482 France
Dubois Pauline 27 pauline.dubois@example.com 0032 619847 Belgique
Dubois Pauline 39 pauline.dubois@example.com 00352 488321 Luxembourg
Dubois Pauline 43 pauline.dubois@example.com 0032 672295 Belgique
Thomas Mathilde 33 mathilde.thomas@example.com 0032 962671 Belgique
Durand Mathilde 23 mathilde.durand@example.com 0032 620824 Belgique
Robert Léa 42 léa.robert@example.com 00352 705265 Luxembourg
Robert Léa 35 léa.robert@example.com 0033 414992 France
Laurent Léa 24 léa.laurent@example.com 00352 700845 Luxembourg
Durand Léa 35 léa.durand@example.com 0033 244259 France
Durand Léa 37 léa.durand@example.com 0032 812033 Belgique
Simon Louise 44 louise.simon@example.com 0033 824570 France
Richard Louise 23 louise.richard@example.com 0032 190360 Belgique
Simon Julie 44 julie.simon@example.com 0033 846044 France
Simon Julie 34 julie.simon@example.com 0032 684304 Belgique
Robert Julie 41 julie.robert@example.com 0032 061956 Belgique
Richard Julie 42 julie.richard@example.com 0032 960781 Belgique
Laurent Julie 40 julie.laurent@example.com 0033 784116 France
Laurent Julie 37 julie.laurent@example.com 0033 213018 France
Robert Emilie 30 emilie.robert@example.com 0033 184154 France
Robert Emilie 33 emilie.robert@example.com 0033 228470 France
Robert Emilie 36 emilie.robert@example.com 00352 119519 Luxembourg
Durand Emilie 30 emilie.durand@example.com 0032 172174 Belgique
Robert Chloé 34 chloé.robert@example.com 0032 239098 Belgique
Laurent Chloé 35 chloé.laurent@example.com 0032 826215 Belgique
Laurent Chloé 31 chloé.laurent@example.com 0032 331605 Belgique
Durand Chloé 24 chloé.durand@example.com 0032 975340 Belgique
Dubois Chloé 25 chloé.dubois@example.com 0032 221284 Belgique
Dubois Chloé 26 chloé.dubois@example.com 0032 471740 Belgique
Dubois Chloé 30 chloé.dubois@example.com 0032 556222 Belgique
Robert Camille 42 camille.robert@example.com 0032 365384 Belgique
Petit Camille 34 camille.petit@example.com 0032 868101 Belgique
Moreau Camille 42 camille.moreau@example.com 0033 450784 France
Martin Camille 32 camille.martin@example.com 0033 427252 France
Laurent Camille 21 camille.laurent@example.com 00352 753403 Luxembourg
Dubois Camille 20 camille.dubois@example.com 0032 482828 Belgique
Thomas Amélie 24 amélie.thomas@example.com 00352 042282 Luxembourg
Robert Amélie 28 amélie.robert@example.com 0032 852502 Belgique
Richard Amélie 23 amélie.richard@example.com 0033 729266 France
Petit Amélie 42 amélie.petit@example.com 0033 472711 France
Moreau Amélie 37 amélie.moreau@example.com 0032 202129 Belgique