Avec le développement de la technologie front-end, JavaScript est de plus en plus largement utilisé. Dans les applications Web, il est souvent nécessaire de transmettre certaines valeurs de la page front-end au PHP back-end pour le traitement, ce qui implique le problème de transfert entre les valeurs JavaScript et PHP. Cet article présentera plusieurs méthodes d'attribution de valeurs JavaScript à PHP.
1. Utiliser la soumission de formulaire
Le moyen le plus courant de transmettre des valeurs JavaScript à PHP consiste à soumettre un formulaire. En JavaScript, nous pouvons obtenir les valeurs des éléments du formulaire via des opérations DOM, puis attribuer ces valeurs aux éléments d'entrée masqués et enfin soumettre le formulaire au back-end PHP pour traitement. L'exemple de code est le suivant :
<form action="handle.php" method="post"> <input type="hidden" name="username" id="username"> <input type="hidden" name="age" id="age"> <button type="submit" onclick="submitForm()">提交</button> </form> <script> function submitForm() { var username = document.getElementById("username").value; var age = document.getElementById("age").value; document.getElementById("username").value = username; document.getElementById("age").value = age; } </script>
Dans cet exemple, nous définissons un formulaire contenant deux éléments d'entrée masqués. Les valeurs de ces deux éléments sont les valeurs de nom d'utilisateur et d'âge obtenues en JavaScript. Lorsque vous cliquez sur le bouton Soumettre, la fonction submitForm() est appelée, les valeurs obtenues sont attribuées aux deux éléments masqués, puis le formulaire est soumis au back-end PHP pour traitement.
Lors du traitement des valeurs transmises par le formulaire, vous pouvez utiliser le tableau $_POST en PHP pour obtenir ces valeurs. L'exemple de code est le suivant :
$username = $_POST['username']; $age = $_POST['age'];
2. Utilisez la technologie AJAX
En plus de transmettre des valeurs JavaScript via la soumission de formulaire, une autre méthode courante consiste à utiliser la technologie AJAX. AJAX peut envoyer une requête au backend PHP sans actualiser la page, transmettant ainsi les valeurs JavaScript à PHP pour traitement. L'exemple de code est le suivant :
<script> var username = '张三'; var age = 18; var xhr = new XMLHttpRequest(); xhr.open('POST', 'handle.php', true); xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded'); xhr.onreadystatechange = function () { if(xhr.readyState == 4 && xhr.status == 200) { console.log(xhr.responseText); } }; xhr.send('username=' + username + '&age=' + age); </script>
Dans cet exemple, nous définissons un objet JavaScript contenant deux variables : le nom d'utilisateur et l'âge. Ensuite, un objet XMLHttpRequest est créé et le type de requête et l'adresse sont spécifiés via la méthode open(). Le type de contenu est défini sur application/x-www-form-urlencoded dans l'en-tête de la requête. En effet, nous allons utiliser la méthode POST pour envoyer la requête au PHP back-end et devons mettre les données dans le fichier. corps de la demande. Enfin, utilisez la méthode send() pour envoyer les données au backend PHP pour traitement.
En PHP, nous pouvons obtenir ces valeurs via le tableau $_POST. L'exemple de code est le suivant :
$username = $_POST['username']; $age = $_POST['age'];
3. Utiliser des cookies pour transmettre
En plus de la soumission de formulaires et de la technologie AJAX, les cookies peuvent également être utilisés pour transmettre des valeurs JavaScript. Les cookies sont un mécanisme permettant de stocker des données côté client et de transmettre des données entre le front-end et le back-end. L'exemple de code est le suivant :
<script> var username = '张三'; var age = 18; document.cookie = 'username=' + username; document.cookie = 'age=' + age; </script>
Dans cet exemple, nous utilisons la propriété document.cookie de JavaScript pour définir la valeur du cookie. La façon de définir un cookie consiste à connecter la valeur et le nom avec un signe égal, puis à utiliser des points-virgules et des espaces pour séparer plusieurs paires clé-valeur. Dans cet exemple, nous définissons les valeurs de nom d'utilisateur et d'âge comme valeurs de cookie.
En PHP, nous pouvons utiliser le tableau $_COOKIE pour obtenir ces valeurs. L'exemple de code est le suivant :
$username = $_COOKIE['username']; $age = $_COOKIE['age'];
Il convient de noter que lorsque vous utilisez des cookies pour transmettre des valeurs, vous devez vous assurer que les cookies peuvent être transmis correctement entre le front-end et le back-end. En particulier lors du croisement de demandes, vous pouvez rencontrer des problèmes de sécurité et vous devez utiliser des attributs de cookie tels que HttpOnly pour garantir la sécurité de la livraison des cookies.
Résumé :
Cet article présente trois méthodes d'attribution de valeurs JavaScript à PHP : la soumission de formulaires, la technologie AJAX et la livraison de cookies. Dans le développement réel, selon différents besoins, différentes méthodes peuvent être sélectionnées pour le transfert de données afin d'obtenir une interaction de données frontale et back-end.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!