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
Richard Camille 24 camille.richard@example.com 0032 011568 Belgique
Thomas Chloé 24 chloé.thomas@example.com 0032 023174 Belgique
Robert Julie 24 julie.robert@example.com 0032 023561 Belgique
Laurent Louise 34 louise.laurent@example.com 0032 074232 Belgique
Durand Emilie 24 emilie.durand@example.com 0032 105879 Belgique
Durand Camille 24 camille.durand@example.com 0032 125305 Belgique
Petit Julie 31 julie.petit@example.com 0032 336714 Belgique
Laurent Pauline 23 pauline.laurent@example.com 0032 356851 Belgique
Martin Mathilde 22 mathilde.martin@example.com 0032 522684 Belgique
Dubois Louise 26 louise.dubois@example.com 0032 562553 Belgique
Martin Mathilde 25 mathilde.martin@example.com 0032 692799 Belgique
Martin Louise 34 louise.martin@example.com 0032 697827 Belgique
Dubois Léa 45 léa.dubois@example.com 0032 712597 Belgique
Laurent Amélie 26 amélie.laurent@example.com 0032 760567 Belgique
Moreau Mathilde 21 mathilde.moreau@example.com 0032 808225 Belgique
Durand Victoire 18 victoire.durand@example.com 0032 885211 Belgique
Dubois Mathilde 29 mathilde.dubois@example.com 0032 938543 Belgique
Petit Amélie 25 amélie.petit@example.com 0033 009954 France
Martin Léa 21 léa.martin@example.com 0033 030587 France
Richard Louise 26 louise.richard@example.com 0033 391167 France
Petit Chloé 43 chloé.petit@example.com 0033 441941 France
Moreau Emilie 39 emilie.moreau@example.com 0033 465431 France
Durand Camille 26 camille.durand@example.com 0033 513923 France
Dubois Victoire 41 victoire.dubois@example.com 0033 516840 France
Thomas Amélie 31 amélie.thomas@example.com 0033 530329 France
Simon Mathilde 43 mathilde.simon@example.com 0033 537259 France
Durand Julie 42 julie.durand@example.com 0033 549142 France
Dubois Victoire 28 victoire.dubois@example.com 0033 559841 France
Richard Victoire 33 victoire.richard@example.com 0033 649088 France
Thomas Victoire 41 victoire.thomas@example.com 0033 712924 France
Moreau Amélie 24 amélie.moreau@example.com 0033 752335 France
Dubois Amélie 25 amélie.dubois@example.com 0033 796987 France
Thomas Chloé 30 chloé.thomas@example.com 0033 844457 France
Petit Pauline 40 pauline.petit@example.com 00352 128777 Luxembourg
Dubois Pauline 39 pauline.dubois@example.com 00352 259187 Luxembourg
Moreau Amélie 41 amélie.moreau@example.com 00352 321899 Luxembourg
Robert Pauline 21 pauline.robert@example.com 00352 322778 Luxembourg
Moreau Camille 42 camille.moreau@example.com 00352 336576 Luxembourg
Laurent Emilie 36 emilie.laurent@example.com 00352 381006 Luxembourg
Petit Léa 33 léa.petit@example.com 00352 449258 Luxembourg
Thomas Amélie 30 amélie.thomas@example.com 00352 462989 Luxembourg
Moreau Emilie 38 emilie.moreau@example.com 00352 571042 Luxembourg
Laurent Victoire 39 victoire.laurent@example.com 00352 592676 Luxembourg
Moreau Chloé 43 chloé.moreau@example.com 00352 594739 Luxembourg
Martin Emilie 28 emilie.martin@example.com 00352 691727 Luxembourg
Moreau Julie 36 julie.moreau@example.com 00352 726613 Luxembourg
Durand Chloé 33 chloé.durand@example.com 00352 896905 Luxembourg
Robert Chloé 41 chloé.robert@example.com 00352 927522 Luxembourg
Thomas Amélie 45 amélie.thomas@example.com 00352 948307 Luxembourg
Richard Pauline 36 pauline.richard@example.com 00352 969068 Luxembourg