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
Robert Victoire 19 victoire.robert@example.com 0032 974765 Belgique
Martin Victoire 21 victoire.martin@example.com 00352 437260 Luxembourg
Laurent Victoire 42 victoire.laurent@example.com 00352 497397 Luxembourg
Moreau Victoire 25 victoire.moreau@example.com 0032 013669 Belgique
Moreau Pauline 25 pauline.moreau@example.com 0033 097259 France
Robert Pauline 42 pauline.robert@example.com 0032 493102 Belgique
Richard Pauline 23 pauline.richard@example.com 0033 740524 France
Richard Pauline 24 pauline.richard@example.com 00352 328066 Luxembourg
Durand Pauline 44 pauline.durand@example.com 0033 881497 France
Martin Pauline 24 pauline.martin@example.com 0033 714917 France
Durand Pauline 23 pauline.durand@example.com 0033 683280 France
Dubois Mathilde 45 mathilde.dubois@example.com 00352 699662 Luxembourg
Dubois Mathilde 26 mathilde.dubois@example.com 00352 147924 Luxembourg
Durand Mathilde 43 mathilde.durand@example.com 00352 104642 Luxembourg
Robert Mathilde 42 mathilde.robert@example.com 0032 044596 Belgique
Thomas Mathilde 35 mathilde.thomas@example.com 0032 667465 Belgique
Martin Mathilde 18 mathilde.martin@example.com 0033 607615 France
Thomas Mathilde 29 mathilde.thomas@example.com 0032 494758 Belgique
Richard Mathilde 42 mathilde.richard@example.com 0033 673277 France
Robert Léa 39 léa.robert@example.com 0032 384042 Belgique
Robert Léa 23 léa.robert@example.com 0032 345536 Belgique
Robert Louise 36 louise.robert@example.com 00352 375441 Luxembourg
Durand Louise 42 louise.durand@example.com 00352 623150 Luxembourg
Simon Louise 29 louise.simon@example.com 00352 723441 Luxembourg
Martin Julie 20 julie.martin@example.com 00352 273948 Luxembourg
Richard Julie 37 julie.richard@example.com 0032 997385 Belgique
Simon Julie 44 julie.simon@example.com 0032 225508 Belgique
Moreau Julie 30 julie.moreau@example.com 0032 591120 Belgique
Moreau Julie 23 julie.moreau@example.com 0032 993897 Belgique
Martin Emilie 27 emilie.martin@example.com 00352 492059 Luxembourg
Simon Emilie 40 emilie.simon@example.com 0032 497445 Belgique
Martin Chloé 38 chloé.martin@example.com 0032 371304 Belgique
Laurent Chloé 45 chloé.laurent@example.com 00352 213149 Luxembourg
Dubois Chloé 34 chloé.dubois@example.com 0033 008527 France
Richard Chloé 29 chloé.richard@example.com 0032 544776 Belgique
Simon Chloé 37 chloé.simon@example.com 0033 679820 France
Robert Chloé 27 chloé.robert@example.com 00352 079712 Luxembourg
Moreau Chloé 45 chloé.moreau@example.com 0032 069150 Belgique
Thomas Camille 44 camille.thomas@example.com 00352 033119 Luxembourg
Robert Camille 44 camille.robert@example.com 0033 667858 France
Dubois Camille 42 camille.dubois@example.com 0033 762160 France
Moreau Camille 25 camille.moreau@example.com 0032 581905 Belgique
Laurent Camille 35 camille.laurent@example.com 0032 356499 Belgique
Petit Amélie 31 amélie.petit@example.com 0033 124643 France
Martin Amélie 36 amélie.martin@example.com 0033 750166 France
Dubois Amélie 39 amélie.dubois@example.com 0033 253181 France
Simon Amélie 40 amélie.simon@example.com 00352 696477 Luxembourg
Moreau Amélie 30 amélie.moreau@example.com 0032 014632 Belgique
Dubois Amélie 33 amélie.dubois@example.com 0032 460391 Belgique
Moreau Amélie 39 amélie.moreau@example.com 00352 094569 Luxembourg