Table of Contents
La notion de site web dynamique repose sur l'interactivité, et donc la capacité du client à envoyer, avec son navigateur, des données au service web. Les méthodes principales pour envoyer les données sont:
L'utilisattion d'un formulaire HTML (méthode POST),
L'utilisation d'une URL (méthode GET).
Les moyens de saisir des données en HTML sont habituellement consignés
à l'intérieur d'un formulaire (form).
Les balises HTML disponibles sont input
, select
ou textarea
.
La balise input
a de nombreuses variantes (attribut type
= text, password, file, hidden, radio, checkbox ...
Le principe de passage des valeurs est le suivant.
Quand un formulaire comme ci-dessous est posté (method='post'
comme attribut de form
)
à l'aide du bouton submit,
le navigateur transmet les valeurs saisies dans le formulaire à l'URL
spécifiée dans l'attribut action
.
Dans notre cas, l'URL de destination est un programme PHP ('maj.php' dans l'exemple)..
<form method="post" action="maj.php"> Champ texte : <input type="text" name="monchamp"><br> <input type=submit value="Insérer"> </form>
PHP met à disposition les valeurs saisies dans une variable $_POST
.
Cette variable est un tableau associatif qui contient en particulier toutes les valeurs
saisies dans les champs du formulaire.
Quand il y a un champ nommé monchamp
dans le formulaire posté, on peut
récupérer la valeur saisie en PHP par
$une_variable_php = $_POST['monchamp'];
La méthode GET permet de récupérer des valeurs passées dans l'URL.
La partie de l'URL contenant les paramètres passés est celle suivant le point d'interrogation (?).
Ensuite, chaque paramètre et sa valeur sont séparés par un ET commercial (&).
Dans l'URL suivante, on a deux paramètres a
et b
qui valent respectivement 23 et toto.
http://domaine.org/maj.php?a=23&b=toto
PHP met à disposition les valeurs des paramètres présents dans une URL à travers une $_GET
.
Dans l'exemple précédent, on peut récupérer la valeur du paramètre a
par:
$une_variable_php = $_GET['a'];
Tip | |
---|---|
La tâche de transférer les valeurs dans $_POST et $_GET (et les autres, moins utilisées) étant fastidieuse, on peut demander à PHP une extraction automatique grâce à la fonction extract(). Elle exporte votre tableau associatif et crée une variable pour chaque clé du tableau.
Par exemple, si le tableau $_POST contient les variables extract($_POST,EXTR_OVERWRITE);
créera les deux variables PHP |