Transmettre des variables Javascript à Php par l'url
Il peut parfois être intéressant de transmettre une variable Javascript à PHP, pour ce faire, rien ne vaut un exemple !
1. Je crée un fichier PHP 'multiplication.php'
2. Sur la page, un bouton nous demande, au clic, d'entrer le chiffre que nous multiplierons
3. La variable Javascript est transmise dans l'url pour que PHP puisse la récupérer.
Voici le contenu du fichier php :
<?php if (!isset($_GET['valider'])) { // Si aucun formulaire soumis afficher notre formulaire pour demander notre nombre
echo '
<form action="" method="get">
<strong>Préparation de table de multiplication</strong><br /><br />
Donner le nombre que vous voulez traiter dans la boîte ci-dessous.<br /><br />
Votre nombre : <input type="button" value="choisir nombre" name="nb" onclick="fct()"/>
</form>
<br />';
}
// Nous avons apellé la fonction fct() dont j'explique le fonctionnement plus bas.
<?php if (isset($_GET['valider'])) { echo ' // Dès que le formulaire est soumis :
<div>';
// Récupération de la variable
$nb = $_GET['nb']; // La variable est récupéré à partir de l'url
echo "Vous avez choisi le nombre <strong>$nb</strong> ";
for ($counter=1; $counter<=15; $counter++) // Afficher la table de nb de 1 a 15
{
echo '<br />'.$counter.'*'.$nb.' = '.$counter*$nb;
}
echo '</div>';}
?>
La fonction fct() :
function fct() {
var nb = prompt('Entrer le nombre'); // Input qui demande le nombre a multiplier, le nombre est affecté a la variable var
alert('vous avez entré : '+nb); // Confirmation du nombre
document.location.href="multiplication.php?nb="+nb+"&valider=Envoyer"; // Le contenu de la variable nb -> notre nombre est transmis dans l'url
}
Dans le javascript ci-dessus, ce qui nous intéresse c'est le : ?nb="+nb+"valider=Envoyer<
?nb est la variable php qui est égale au contenu de la variable Javascript nb.
J'espère que ça pourra vous aider
Alexandre, Expert en référencement SEO dans une Agence web à Lille (Agence C.S.V)
Sois le premier à débuter une discussion à propos de cet article !
Ajoute un commentaire !