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
Laurent Julie 45 julie.laurent@example.com 00352 996547 Luxembourg
Dubois Chloé 37 chloé.dubois@example.com 00352 922091 Luxembourg
Thomas Chloé 20 chloé.thomas@example.com 00352 910176 Luxembourg
Martin Léa 24 léa.martin@example.com 00352 906154 Luxembourg
Richard Louise 21 louise.richard@example.com 00352 866718 Luxembourg
Thomas Mathilde 37 mathilde.thomas@example.com 00352 796269 Luxembourg
Simon Julie 26 julie.simon@example.com 00352 765447 Luxembourg
Richard Victoire 22 victoire.richard@example.com 00352 759896 Luxembourg
Richard Pauline 20 pauline.richard@example.com 00352 569806 Luxembourg
Robert Amélie 25 amélie.robert@example.com 00352 542962 Luxembourg
Dubois Louise 31 louise.dubois@example.com 00352 415115 Luxembourg
Martin Louise 37 louise.martin@example.com 00352 354820 Luxembourg
Moreau Amélie 30 amélie.moreau@example.com 00352 224162 Luxembourg
Martin Pauline 36 pauline.martin@example.com 00352 195866 Luxembourg
Thomas Amélie 37 amélie.thomas@example.com 00352 134027 Luxembourg
Laurent Emilie 22 emilie.laurent@example.com 00352 059978 Luxembourg
Durand Emilie 42 emilie.durand@example.com 00352 052929 Luxembourg
Richard Louise 24 louise.richard@example.com 0033 997446 France
Durand Victoire 40 victoire.durand@example.com 0033 969473 France
Thomas Chloé 39 chloé.thomas@example.com 0033 901212 France
Moreau Mathilde 34 mathilde.moreau@example.com 0033 815446 France
Robert Emilie 43 emilie.robert@example.com 0033 792847 France
Simon Chloé 42 chloé.simon@example.com 0033 790500 France
Durand Chloé 42 chloé.durand@example.com 0033 770389 France
Durand Victoire 39 victoire.durand@example.com 0033 722185 France
Simon Emilie 18 emilie.simon@example.com 0033 580561 France
Richard Mathilde 20 mathilde.richard@example.com 0033 568249 France
Richard Léa 26 léa.richard@example.com 0033 305732 France
Thomas Victoire 36 victoire.thomas@example.com 0033 297621 France
Dubois Victoire 41 victoire.dubois@example.com 0033 258919 France
Richard Emilie 38 emilie.richard@example.com 0033 243978 France
Durand Camille 37 camille.durand@example.com 0033 235306 France
Richard Julie 45 julie.richard@example.com 0033 221932 France
Robert Louise 23 louise.robert@example.com 0033 133207 France
Robert Louise 24 louise.robert@example.com 0033 084468 France
Simon Victoire 41 victoire.simon@example.com 0032 923990 Belgique
Petit Léa 25 léa.petit@example.com 0032 864703 Belgique
Robert Léa 39 léa.robert@example.com 0032 860110 Belgique
Moreau Amélie 32 amélie.moreau@example.com 0032 854184 Belgique
Durand Victoire 40 victoire.durand@example.com 0032 813412 Belgique
Petit Léa 26 léa.petit@example.com 0032 595841 Belgique
Martin Amélie 30 amélie.martin@example.com 0032 578017 Belgique
Robert Julie 31 julie.robert@example.com 0032 521371 Belgique
Thomas Emilie 23 emilie.thomas@example.com 0032 504647 Belgique
Durand Léa 44 léa.durand@example.com 0032 393347 Belgique
Laurent Camille 38 camille.laurent@example.com 0032 284615 Belgique
Thomas Mathilde 18 mathilde.thomas@example.com 0032 227965 Belgique
Moreau Camille 36 camille.moreau@example.com 0032 079115 Belgique
Robert Pauline 24 pauline.robert@example.com 0032 076435 Belgique
Laurent Emilie 25 emilie.laurent@example.com 0032 022370 Belgique