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
Petit Victoire 41 victoire.petit@example.com 00352 251188 Luxembourg
Simon Emilie 42 emilie.simon@example.com 00352 313376 Luxembourg
Moreau Louise 27 louise.moreau@example.com 00352 244750 Luxembourg
Martin Chloé 35 chloé.martin@example.com 00352 808921 Luxembourg
Richard Amélie 24 amélie.richard@example.com 00352 071279 Luxembourg
Robert Mathilde 33 mathilde.robert@example.com 00352 004748 Luxembourg
Petit Amélie 32 amélie.petit@example.com 00352 123905 Luxembourg
Thomas Victoire 37 victoire.thomas@example.com 00352 576612 Luxembourg
Durand Léa 44 léa.durand@example.com 00352 977269 Luxembourg
Moreau Amélie 26 amélie.moreau@example.com 00352 927357 Luxembourg
Simon Julie 27 julie.simon@example.com 00352 443244 Luxembourg
Dubois Chloé 25 chloé.dubois@example.com 00352 116674 Luxembourg
Dubois Emilie 19 emilie.dubois@example.com 00352 145326 Luxembourg
Richard Mathilde 43 mathilde.richard@example.com 00352 710747 Luxembourg
Laurent Amélie 26 amélie.laurent@example.com 00352 899042 Luxembourg
Moreau Victoire 43 victoire.moreau@example.com 00352 806980 Luxembourg
Martin Louise 22 louise.martin@example.com 00352 265081 Luxembourg
Simon Amélie 19 amélie.simon@example.com 0033 836838 France
Robert Mathilde 43 mathilde.robert@example.com 0033 320293 France
Laurent Chloé 33 chloé.laurent@example.com 0033 409091 France
Richard Amélie 23 amélie.richard@example.com 0033 194368 France
Martin Camille 33 camille.martin@example.com 0033 007758 France
Simon Chloé 38 chloé.simon@example.com 0033 778093 France
Richard Camille 41 camille.richard@example.com 0033 570540 France
Robert Emilie 35 emilie.robert@example.com 0033 836984 France
Richard Chloé 37 chloé.richard@example.com 0033 341095 France
Petit Emilie 28 emilie.petit@example.com 0033 940680 France
Durand Amélie 38 amélie.durand@example.com 0033 113595 France
Thomas Chloé 33 chloé.thomas@example.com 0033 734491 France
Petit Emilie 35 emilie.petit@example.com 0033 211391 France
Simon Camille 26 camille.simon@example.com 0033 294630 France
Petit Louise 43 louise.petit@example.com 0033 524081 France
Petit Léa 36 léa.petit@example.com 0033 279133 France
Robert Amélie 25 amélie.robert@example.com 0032 879248 Belgique
Laurent Mathilde 19 mathilde.laurent@example.com 0032 734845 Belgique
Petit Camille 23 camille.petit@example.com 0032 579476 Belgique
Martin Julie 36 julie.martin@example.com 0032 528622 Belgique
Martin Pauline 45 pauline.martin@example.com 0032 385813 Belgique
Laurent Mathilde 24 mathilde.laurent@example.com 0032 189791 Belgique
Dubois Emilie 30 emilie.dubois@example.com 0032 307343 Belgique
Petit Chloé 37 chloé.petit@example.com 0032 898853 Belgique
Moreau Léa 40 léa.moreau@example.com 0032 299895 Belgique
Robert Louise 28 louise.robert@example.com 0032 604194 Belgique
Laurent Chloé 38 chloé.laurent@example.com 0032 747278 Belgique
Richard Julie 43 julie.richard@example.com 0032 955114 Belgique
Durand Pauline 41 pauline.durand@example.com 0032 529632 Belgique
Richard Louise 32 louise.richard@example.com 0032 427768 Belgique
Petit Camille 41 camille.petit@example.com 0032 904600 Belgique
Laurent Louise 31 louise.laurent@example.com 0032 845195 Belgique
Robert Pauline 33 pauline.robert@example.com 0032 440936 Belgique