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 Léa 32 léa.simon@example.com 00352 067596 Luxembourg
Robert Chloé 31 chloé.robert@example.com 00352 939298 Luxembourg
Dubois Amélie 28 amélie.dubois@example.com 00352 713367 Luxembourg
Martin Camille 18 camille.martin@example.com 00352 428259 Luxembourg
Simon Léa 43 léa.simon@example.com 00352 763650 Luxembourg
Simon Louise 45 louise.simon@example.com 00352 114072 Luxembourg
Dubois Victoire 37 victoire.dubois@example.com 00352 414465 Luxembourg
Dubois Emilie 31 emilie.dubois@example.com 00352 526295 Luxembourg
Richard Pauline 24 pauline.richard@example.com 00352 992320 Luxembourg
Petit Julie 41 julie.petit@example.com 00352 555668 Luxembourg
Richard Mathilde 26 mathilde.richard@example.com 00352 758012 Luxembourg
Dubois Camille 40 camille.dubois@example.com 00352 232464 Luxembourg
Moreau Emilie 45 emilie.moreau@example.com 00352 832250 Luxembourg
Durand Emilie 36 emilie.durand@example.com 00352 908813 Luxembourg
Dubois Pauline 45 pauline.dubois@example.com 00352 949890 Luxembourg
Thomas Léa 42 léa.thomas@example.com 00352 911227 Luxembourg
Moreau Mathilde 29 mathilde.moreau@example.com 00352 882753 Luxembourg
Moreau Mathilde 23 mathilde.moreau@example.com 00352 386135 Luxembourg
Dubois Mathilde 33 mathilde.dubois@example.com 00352 259082 Luxembourg
Laurent Léa 30 léa.laurent@example.com 00352 030762 Luxembourg
Laurent Chloé 42 chloé.laurent@example.com 00352 030815 Luxembourg
Durand Mathilde 26 mathilde.durand@example.com 0033 219920 France
Simon Emilie 37 emilie.simon@example.com 0033 984010 France
Martin Louise 33 louise.martin@example.com 0033 597822 France
Durand Chloé 44 chloé.durand@example.com 0033 230407 France
Richard Victoire 33 victoire.richard@example.com 0033 918467 France
Simon Victoire 19 victoire.simon@example.com 0033 203478 France
Martin Amélie 39 amélie.martin@example.com 0033 364062 France
Durand Amélie 31 amélie.durand@example.com 0033 735784 France
Durand Chloé 28 chloé.durand@example.com 0033 016374 France
Laurent Victoire 26 victoire.laurent@example.com 0033 962150 France
Thomas Julie 35 julie.thomas@example.com 0033 350551 France
Simon Mathilde 32 mathilde.simon@example.com 0032 619654 Belgique
Richard Léa 27 léa.richard@example.com 0032 475604 Belgique
Petit Chloé 34 chloé.petit@example.com 0032 969105 Belgique
Durand Louise 44 louise.durand@example.com 0032 511429 Belgique
Petit Chloé 42 chloé.petit@example.com 0032 677740 Belgique
Petit Louise 23 louise.petit@example.com 0032 052318 Belgique
Petit Amélie 31 amélie.petit@example.com 0032 712919 Belgique
Richard Pauline 41 pauline.richard@example.com 0032 303711 Belgique
Martin Chloé 22 chloé.martin@example.com 0032 178813 Belgique
Dubois Amélie 43 amélie.dubois@example.com 0032 862969 Belgique
Petit Victoire 39 victoire.petit@example.com 0032 989915 Belgique
Robert Julie 32 julie.robert@example.com 0032 331629 Belgique
Dubois Mathilde 26 mathilde.dubois@example.com 0032 182816 Belgique
Martin Léa 43 léa.martin@example.com 0032 834099 Belgique
Robert Louise 29 louise.robert@example.com 0032 474954 Belgique
Dubois Pauline 33 pauline.dubois@example.com 0032 246428 Belgique
Martin Amélie 39 amélie.martin@example.com 0032 474509 Belgique
Laurent Pauline 31 pauline.laurent@example.com 0032 300472 Belgique