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
Thomas Louise 37 louise.thomas@example.com 0032 693483 Belgique
Thomas Julie 20 julie.thomas@example.com 0033 979088 France
Thomas Pauline 29 pauline.thomas@example.com 00352 739643 Luxembourg
Thomas Julie 43 julie.thomas@example.com 0033 934975 France
Thomas Pauline 34 pauline.thomas@example.com 0032 665016 Belgique
Thomas Mathilde 18 mathilde.thomas@example.com 00352 637230 Luxembourg
Thomas Julie 35 julie.thomas@example.com 0033 151158 France
Thomas Amélie 25 amélie.thomas@example.com 00352 399260 Luxembourg
Simon Julie 30 julie.simon@example.com 0033 947471 France
Simon Julie 35 julie.simon@example.com 0033 110366 France
Simon Chloé 30 chloé.simon@example.com 0032 003606 Belgique
Simon Amélie 38 amélie.simon@example.com 0032 663003 Belgique
Simon Chloé 36 chloé.simon@example.com 0033 601957 France
Simon Victoire 42 victoire.simon@example.com 0033 540376 France
Simon Léa 36 léa.simon@example.com 0033 909048 France
Simon Victoire 18 victoire.simon@example.com 0033 035794 France
Robert Camille 33 camille.robert@example.com 00352 903238 Luxembourg
Robert Camille 18 camille.robert@example.com 00352 007679 Luxembourg
Robert Louise 31 louise.robert@example.com 0032 355164 Belgique
Robert Emilie 29 emilie.robert@example.com 0032 297847 Belgique
Robert Mathilde 42 mathilde.robert@example.com 0032 345065 Belgique
Richard Léa 43 léa.richard@example.com 0033 427785 France
Richard Julie 39 julie.richard@example.com 0032 947315 Belgique
Richard Julie 29 julie.richard@example.com 00352 563496 Luxembourg
Richard Chloé 37 chloé.richard@example.com 0032 445650 Belgique
Richard Emilie 34 emilie.richard@example.com 00352 961959 Luxembourg
Richard Victoire 23 victoire.richard@example.com 00352 210276 Luxembourg
Richard Amélie 21 amélie.richard@example.com 0033 411172 France
Petit Camille 29 camille.petit@example.com 0032 646477 Belgique
Petit Julie 38 julie.petit@example.com 0032 569345 Belgique
Moreau Mathilde 37 mathilde.moreau@example.com 0033 893698 France
Moreau Emilie 43 emilie.moreau@example.com 0033 956838 France
Martin Mathilde 22 mathilde.martin@example.com 00352 385380 Luxembourg
Martin Léa 41 léa.martin@example.com 0033 324887 France
Martin Victoire 25 victoire.martin@example.com 0032 544902 Belgique
Martin Mathilde 35 mathilde.martin@example.com 00352 746042 Luxembourg
Martin Victoire 27 victoire.martin@example.com 0032 561356 Belgique
Martin Camille 19 camille.martin@example.com 0032 110809 Belgique
Martin Amélie 34 amélie.martin@example.com 0032 571910 Belgique
Martin Camille 27 camille.martin@example.com 0033 325197 France
Martin Julie 18 julie.martin@example.com 0033 267453 France
Laurent Léa 35 léa.laurent@example.com 0032 330662 Belgique
Laurent Camille 20 camille.laurent@example.com 0033 395982 France
Laurent Julie 27 julie.laurent@example.com 00352 194953 Luxembourg
Durand Louise 35 louise.durand@example.com 00352 454088 Luxembourg
Durand Victoire 35 victoire.durand@example.com 00352 622322 Luxembourg
Durand Chloé 18 chloé.durand@example.com 0032 804362 Belgique
Dubois Léa 35 léa.dubois@example.com 0033 379720 France
Dubois Léa 31 léa.dubois@example.com 0032 723237 Belgique
Dubois Camille 23 camille.dubois@example.com 0032 871468 Belgique