Passer des variables dans une adresse URL

Lorsqu'on travaille avec PHP, on a souvent besoin de passer des variables d'une page à une autre. Cette leçon traite du passage de variables dans une adresse URL.

Comment ça marche ?

Vous vous êtes sans doute demandé pourquoi certaines adresses URL ressemblaient à ceci :
 http://html.net/page.php?id=1254

Pourquoi y a-t-il un point d'interrogation après le nom de la page ?
La réponse est que les caractères après le point d'interrogation forment une chaîne de requête HTTP. Une chaîne de requête HTTP peut contenir à la fois des variables et leurs valeurs. Dans l'exemple ci-dessus, la chaîne de requête contient la variable "id" avec la valeur "1254".
Voici un autre exemple :
 http://html.net/page.php?name=Joe

Nous avons encore une variable ("name") avec une valeur ("Joe").

Comment récupérer la variable avec PHP ?

Disons que l'on ait une page PHP nommée people.php. On peut appeler cette page avec l'adresse URL suivante :
 people.php?name=Joe

Avec PHP, on pourra obtenir la valeur de la variable 'name' de cette façon :
 $_GET["name"]

Donc vous employez documentation$_GET pour trouver la valeur d'une variable nommée. Essayons dans un exemple :
 <html>
<head>
<title>Query string</title>
</head>
<body>

<?php

' The value of the variable name is found
echo "<h1>Hello " . $_GET["name"] . "</h1>";

?>

</body>
</html>

Dans l'exemple ci-dessus, essayez de remplacer le nom "Joe" par votre propre nom dans l'URL puis appelez à nouveau le document. C'est chouette, non ?

Plusieurs variables dans la même adresse URL

On n'est pas limité à une seule variable par URL. On peut en passer plusieurs en séparant les variables par un caractère & :
 people.php?name=Joe&age=24

Cette adresse URL contient deux variables : "name" et "age". On récupérera les variables de la même façon que précédemment :
 $ _GET["name"]
$ _GET["age"]

Rajoutons cette nouvelle variable dans notre exemple :
 <html>
<head>
<title>Query string </title>
</head>
<body>

<?php

// The value of the variable name is found
echo "<h1>Hello " . $ _GET["name"] . "</h1>";

// The value of the variable age is found
echo "<h1>You are . " $ _GET["age"] . " years old </h1>";

?>

</body>
</html>

Vous connaissez maintenant un moyen de passer des valeurs entre des pages en utilisant une adresse URL. Dans la leçon suivante, nous verrons une autre méthode : les formulaires.

Aucun commentaire:

Fourni par Blogger.