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
Moreau Amélie 29 amélie.moreau@example.com 0032 514947 Belgique
Laurent Amélie 25 amélie.laurent@example.com 0033 923729 France
Richard Camille 39 camille.richard@example.com 0033 763385 France
Petit Camille 31 camille.petit@example.com 00352 422760 Luxembourg
Petit Camille 44 camille.petit@example.com 0032 098087 Belgique
Dubois Camille 28 camille.dubois@example.com 0032 888332 Belgique
Richard Camille 19 camille.richard@example.com 0033 204469 France
Robert Camille 32 camille.robert@example.com 0033 597367 France
Richard Camille 45 camille.richard@example.com 0033 778337 France
Richard Camille 43 camille.richard@example.com 0033 589302 France
Laurent Chloé 32 chloé.laurent@example.com 0033 221066 France
Simon Chloé 43 chloé.simon@example.com 0032 942950 Belgique
Durand Chloé 44 chloé.durand@example.com 0033 456056 France
Simon Chloé 37 chloé.simon@example.com 0033 188367 France
Martin Chloé 28 chloé.martin@example.com 0033 169723 France
Richard Emilie 43 emilie.richard@example.com 0032 653103 Belgique
Robert Emilie 28 emilie.robert@example.com 00352 619767 Luxembourg
Robert Emilie 28 emilie.robert@example.com 0032 353358 Belgique
Robert Emilie 42 emilie.robert@example.com 00352 764772 Luxembourg
Moreau Julie 41 julie.moreau@example.com 00352 588077 Luxembourg
Laurent Julie 44 julie.laurent@example.com 0032 458061 Belgique
Dubois Julie 18 julie.dubois@example.com 0033 839583 France
Martin Julie 27 julie.martin@example.com 00352 775959 Luxembourg
Laurent Julie 22 julie.laurent@example.com 0033 981881 France
Moreau Julie 29 julie.moreau@example.com 0033 321053 France
Petit Julie 30 julie.petit@example.com 0033 224749 France
Robert Louise 24 louise.robert@example.com 00352 381716 Luxembourg
Thomas Louise 41 louise.thomas@example.com 00352 791383 Luxembourg
Moreau Louise 26 louise.moreau@example.com 00352 952631 Luxembourg
Robert Léa 19 léa.robert@example.com 00352 946170 Luxembourg
Richard Léa 38 léa.richard@example.com 00352 263029 Luxembourg
Simon Léa 33 léa.simon@example.com 0033 829496 France
Laurent Léa 18 léa.laurent@example.com 0032 148590 Belgique
Moreau Léa 32 léa.moreau@example.com 0032 016727 Belgique
Durand Mathilde 18 mathilde.durand@example.com 00352 993690 Luxembourg
Durand Mathilde 34 mathilde.durand@example.com 00352 918976 Luxembourg
Richard Mathilde 40 mathilde.richard@example.com 0032 515447 Belgique
Richard Mathilde 19 mathilde.richard@example.com 00352 521006 Luxembourg
Dubois Mathilde 34 mathilde.dubois@example.com 0032 158447 Belgique
Petit Mathilde 34 mathilde.petit@example.com 0033 995962 France
Durand Mathilde 38 mathilde.durand@example.com 0033 357053 France
Simon Mathilde 32 mathilde.simon@example.com 0032 684112 Belgique
Durand Pauline 20 pauline.durand@example.com 0033 621517 France
Petit Pauline 31 pauline.petit@example.com 00352 267073 Luxembourg
Moreau Pauline 33 pauline.moreau@example.com 0032 500746 Belgique
Robert Victoire 24 victoire.robert@example.com 0032 850165 Belgique
Simon Victoire 39 victoire.simon@example.com 0033 069735 France
Thomas Victoire 23 victoire.thomas@example.com 0032 081422 Belgique
Durand Victoire 21 victoire.durand@example.com 0032 603988 Belgique
Thomas Victoire 35 victoire.thomas@example.com 0033 762708 France