Comment passer les variables à la page suivante en PHP

  1. Utilisation de GET et POST par le biais d’un formulaire HTML
  2. Utiliser session et cookie

Une variable PHP est un symbole ou un nom qui équivaut à une valeur. Elle est utilisée pour stocker des valeurs telles que des valeurs, des caractères ou des adresses mémoire afin qu’elles puissent être utilisées dans n’importe quelle partie du programme. Une simple variable peut être utilisée dans n’importe quelle partie du programme, mais elle n’est pas accessible en dehors de celui-ci, à moins qu’elle ne soit passée par un formulaire HTML, une session ou un cookie, à l’aide de GET et POST.

Utilisation de GET et POST par le biais d’un formulaire HTML

Le formulaire HTML est l’une des fonctions les plus puissantes du PHP. Tout élément de formulaire sera automatiquement disponible pour la destination action du formulaire.

Demande POST

<form action="nextPage.php" method="POST">
    <input type="text" name="email">
    <input type="text" name="username">
    <input type="submit" name="submit">
</form>

Récupération des données vers nextPage.php

$username = isset($_POST['username']) ? $_POST['username'] : "";
$email       = isset($_POST['email']) ? $_POST['email'] : "";
echo "Username: ".$username;
echo "Email: ".$email;

L’exemple de sortie du script peut être:

Username: johndoe
Email: johndoe@gmail.com

L’exemple ci-dessus montre comment passer une variable en utilisant POST à travers un formulaire HTML. L’élément de formulaire doit avoir les attributs action et method. L’action contient la page suivante, dans ce cas, il s’agit de nextPage.php. La méthode peut être un POST ou un GET. Vous pouvez alors accéder aux éléments de la nextPage.php en utilisant un $_POST ou un $_GET.

Requête GET

<?php
$phpVariable = "Dog";
?>
<a href="nextPage.php?data=<?=$phpVariable?>">Bring me to nextPage</a>

Cet exemple va créer une variable GET et peut être accessible sur nextPage.php.

Exemple:

echo $phpVariable = $_GET['phpVariable'];
//output: Dog

La variable GET est accessible en utilisant $_GET.

Un autre moyen est d’ajouter un élément caché dans un formulaire HTML qui se soumet à la page suivante.

Exemple:

<form action="nextPage.php" method="POST">
    <input type="hidden" name="phpVariable" value="Dog">
    <input type="submit" name="submit">
</form>

nextPage.php

//Using POST
$phpVariable = $_POST['phpVariable'];
//Using GET
$phpVariable = $_GET['phpVariable'];
//Using GET, POST or COOKIE;
$phpVariable = $_REQUEST['phpVariable'];

Vous pouvez changer la méthode de POST à GET pour utiliser la requête GET. POST et GET ne sont pas sécurisés par les robots, mais GET est plus facile à pirater car il est disponible par le frontal.

La requête $_REQUEST peut accepter à la fois GET, POST ou COOKIE. Il est bon d’utiliser $_REQUEST sur les formulaires d’auto-référence pour les validations.

La session et le cookie sont plus faciles à utiliser, mais la “session” est beaucoup plus sûre que les cookies, mais pas complètement.

**La “session” est plus facile à utiliser.

//page 1
$phpVariable = "Dog";
$_SESSION['animal'] = $phpVariable;

//page 2
$value = $_SESSION['animal'];

Note: Lorsque vous utilisez la session, souvenez-vous toujours d’ajouter session_start() sur les deux pages avant d’accéder au tableau $_SESSION.

cookie

//page 1
$phpVariable = "Dog";
$_COOKIE['animal'] = $phpVariable;

//page 2
$value = $_COOKIE['animal'];

La différence la plus évidente entre les cookies et la session est que la session sera stockée du côté serveur alors que les cookies auront le côté client comme stockage.

Article connexe - PHP Variable

  • Déclarer une variable globale en PHP