Echanger des variables entre Javascript et PHP
Comment les variables de Javascript peuvent-elles être utilisées par les scripts PHP?
Et inversement, comment utiliser les valeurs de variables PHP en Javascript ?
Et inversement, comment utiliser les valeurs de variables PHP en Javascript ?
Les valeurs de formulaire seront dans $_POST ou $_GET
Commençons par l'utilisation des éléments de formulaire en PHP. Le nom des éléments d'un formulaire sont également des variables de PHP dès lors que le script PHP est l'action du formulaire.
Exemple, ce formulaire complet:
<form method="POST" name="myform" action="php-form-code.php"> <input type="text" name="mytext" maxlength="80" size="30"> <input type="submit" value="Submit" > </form>
"mytext" est le nom donné à l'objet de saisie de texte dans le formulaire ci-dessus.
Le script PHP retrouve le nom comme indice du tableau $_POST:
Le script PHP retrouve le nom comme indice du tableau $_POST:
<?php $mytext = $_POST['mytext']; echo $mytext; ?>
En fait, quand un fichier est chargé par la propriété action du formulaire, tous les objets de ce formulaire sont donnés comme paramètres au fichier de script, avec le format :
?nom=valeur&nom=valeur ...
Ces paramètres font partie de l'URL avec une requête GET, ils sont invisible avec POST.
Et ces paramètres deviennent des variables et des valeurs dans un script PHP.
Dans ce cas-ci :
Dans ce cas-ci :
?mytext="le texte entré"
La valeur est le texte que vous avez tapé au clavier.
Le type hidden permet d'envoyer des données non fournies par l'utilisateur
Et si vous voulez envoyer au script sur le serveur quelques valeurs qui ne sont pas obtenues par le formulaire, comment faire?
Une solution simple est l'utilisation des éléments cachés, tel que celui-ci :
Une solution simple est l'utilisation des éléments cachés, tel que celui-ci :
<input type="hidden" name="extra" value="Contenu de la variable supplémentaire" >
Ce type d'élément n'est pas affiché dans le formulaire, et n'a qu'une seule utilité, fournir une valeur qui sera ajouté aux autres valeurs fournies par la formulaire.
Si vous voulez changer dynamiquement la valeur par un script, vous pouvez assigner la valeur de la balise cachée, exemple :
document.myform.extra.value = "quelque valeur";
Les variables de PHP sont insérées dans une page HTML par echo
Cette page doit être parsée par l'interpréteur PHP, donc avoir l'extension PHP (a moins que le serveur ne soit configuré autrement).
Une fois que le code PHP est inclus, avec les instructions suivante:
<?php require("some-script.php"; ?>
...n'importe quoi pourra être inséré dans la page avec la commande echo :
<?php echo "<p>Ce texte est affiché dans la page</p>"; ?>
Vous pouvez assigner directement une valeur à une propriété d'un objet de cette manière.
<script> var x = "<?php echo $x; ?>"; </script>
C'est une erreur commune d'inclure le code PHP dans celui de Javascript en s'attendant à ce que le code PHP utilise les résultats de Javascript. En fait PHP est traité par le serveur avant que la page soit chargée et le code de Javascript est traité après que la page ait été chargée. Il n'y a aucun moyen au code PHP d'employer directement les résultats du code de Javascript, on doit employerAjax à la place
0 commentaires:
Enregistrer un commentaire