Sélectionnez votre langue

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 ( "&" , $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
Android | iOS | Web | NFC

Keep in touch