You speak english?
Plateforme : PHP 5
Date : 2009
Détails : Récupération de toutes les variables GET et POST


Quel est la différence entre GET et POST ?


Lorsque vous envoyer des valeurs d'une page à une autre comme c'est le cas lors de l'utilisation d'un formulaire, vous pouvez utiliser 2 méthodes, l'envoi des variables par POST, ou alors en GET.
La méthode POST permet de transmettre les valeurs dans le corps de la requête, ainsi ces valeurs sont caché.
Alors que GET permet de passer des valeurs directement dans l'URL, du type :

http://www.wakdev.com/index.php?mavariable=15&monautrevariable=20

Comment récupérer une variable envoyée en POST ou en GET ?


Voici comment procéder pour récupérer les valeurs :

<?php
 
// ici on récupère la variable passer en GET
echo $_GET [ 'variableget' ] ;
 
// ici on récupère la variable passer en POST
echo $_POST [ 'variablepost' ] ;
 
?>


Comment récupérer toutes les variables envoyées en POST et en GET ?


Vous aurez remarqué dans l'exemple plus haut que pour récupérer une variable POST ou GET il faut connaitre son nom, je vous propose ci-dessous un petit algorithme qui permet de récupérer les toutes les valeurs envoyées que ce soit en POST ou en GET :

<?php
 
    // Récupération des variables GET
    $tabUrl = parse_url ( $_SERVER [ 'REQUEST_URI' ] ) ;
    $listparam = explode ( "&amp;" , $tabUrl [ 'query' ] ) ;
    $nb_param = count ( $listparam ) ;
 
    // on associe les valeurs 
    for ( $i=0 ; $i<$nb_param ; $i++)  {
      $param = explode ( '=' , $listparam[$i] ) ;
      $paramname = $param[0];
      $paramvalue = $param[1];
      $$paramname = $paramvalue;
    }
 
 
    // Récupération des variables POST
    foreach ( $_POST as $post => $val )  {            
        $$post = $val;
    }
 
 
   // affichage d'une variable post ou get
   echo $mavariable ;
 
?>
Remarque : la ligne $$paramname = $paramvalue permet de créer une variable avec comme nom, la valeur de $paramname et comme contenu, la valeur de $paramvalue.


About

Créateur de solutions innovantes

Keep in touch

wakdev - PGP Public Keyjulien [arobase] wakdev.com

All rights reserved : wakdev
Tread softly because you tread on my internet...