Maison  >  Article  >  interface Web  >  Comment transmettre la valeur de la variable js à php

Comment transmettre la valeur de la variable js à php

不言
不言original
2018-07-14 11:39:0718607parcourir

Cet article présente principalement comment transférer les valeurs des variables js​​vers php. Maintenant, je le partage avec tout le monde. Les amis dans le besoin peuvent s'y référer

1. 🎜>

Résumé en une phrase : transmettez les paramètres au backend et utilisez ajax ou js natif pour fusionner l'URL. Comprenez le principe et comprenez que le système analyse d'abord php, puis exécute le code html et le code js.

2. Utilisez ajax

1. Soumettez les données sur la page : ajax

2. Obtenez les paramètres sur la page php : $val = $_POST['val'].

Code de référence (jquery) :

$.ajax({
type: 'POST',
url: 'save.php',
data: {val: text1obj.value}
success: function(msg){// msg: php返回内容/* alert(修改成功); */window.location = window.location;
},
error:function(msg){// 提交失败}
});
Question :

<SCRIPT LANGUAGE="JavaScript">
var bid=document.fenlei.bfenlei.value;
<?php
$sql1="select * from s_type where b_id=&#39;$bid&#39;";
//.......
?>
</SCRIPT>

Avec le code ci-dessus, comment transmettre la valeur de l'enchère du document à l'offre dans la déclaration PHP suivante ? ? ? ?

Réponse :

不用AJAX,最简单就是传个参数过去
如:function saveGame(str){
    window.location.href=&#39;url?str=&#39; + str;
}

楼上的是一种跳转的方式。如果你想不刷新处理,获取数据。还是用ajax 。很简单的。给你个例子。这里我我用jquery的$.post
  $.post(URL,{参数1:alue,参数2:value2},function(data){
       //这里你可以处理获取的数据。我使用是json 格式。你也可以使用其它格式。或者为空,让它自己判断得了
},&#39;json&#39;);
L'un est côté serveur et l'autre est côté client.


Bien sûr que non.

Je ne comprends pas pourquoi vous devez utiliser js pour transmettre la valeur.

Vous pouvez utiliser les paramètres d'url directement comme ceci : test.php?bid=1 N'est-ce pas correct ?

Il est plus difficile de l'implémenter avec js, car lorsque vous ouvrez la page Web, vous exécutez d'abord php puis js. En d’autres termes, peu importe où est placé votre js, php sera exécuté avant l’exécution de js.

Si vous insistez pour utiliser js pour transférer des valeurs​​vers php, alors vous devez utiliser ajax. Cela nécessite de connaître vos besoins spécifiques.

Utilisez AJAX pour envoyer en arrière-plan

méthode proytype :

function changeshow()
{
var bid=document.fenlei.bfenlei.value;
var url = &#39;adm_mod_ajax.php&#39;;
var pars = &#39;mtype=1&mid=&#39; + mid+&#39;&bid=&#39;+bid;
var myAjax = new Ajax.Request(
url,
{method: &#39;post&#39;, parameters: pars, onComplete: showResponse}
);
}

3. Le système Insight analyse d'abord le php, puis exécute d'autres codes. Concaténation de chaînes

De cette façon

<script>
    function dailyTask(){
        $(&#39;#my_daily_task_calendar&#39;).datepicker().on(&#39;changeDate.datepicker.amui&#39;, function(event) {
            var dailyTaskDate=$(this).val();
            var url1="{:url(&#39;task/getDailyTaskData&#39;)}";
            var url2=&#39;?dailyTaskDate=&#39;+dailyTaskDate;
            document.location=url1+url2;
        });
    }
    dailyTask();
</script>
le serveur Apache le traduira en premier lors du chargement de la page

7 var url2='?dailyTaskDate =' +dailyTaskDate; Cette phrase. Une fois le php traduit, il est transmis au navigateur.

Cela ne fonctionne pas, car php salted fish js est exécuté, donc la variable dailyTaskDate dans js ne sera pas trouvée, donc une erreur constante est signalée dans php.

var dailyTaskDate=$(this).val();
document.location={:url(&#39;task/getDailyTaskData&#39;,array(&#39;dailyTaskDate&#39;=>dailyTaskDate))};
4. Comment actualiser la page dans la fonction de rappel ajax

Lorsque vous faites une démo, la fonction de rappel ne veut pas être gênante, actualisez simplement la page Vous pouvez utiliser location.reload(true); Cette phrase est équivalente à la touche F5 pour actualiser la page. Cette méthode peut consommer une certaine quantité de ressources, mais actualiser la page est toujours très pratique.

Le code suivant peut actualiser la page avec ajax, mais il ne sert à rien

<script>
    function dailyTask(){
        $(&#39;#my_daily_task_calendar&#39;).datepicker().on(&#39;changeDate.datepicker.amui&#39;, function(event) {
            var dailyTaskDate=$(this).val();
            $.post("task/getDailyTaskData", { dailyTaskDate:dailyTaskDate}, function () {
                document.location.reload();
            });
        });
    }
    dailyTask();
</script>

Ce qui précède est tout le contenu de cet article, je l'espère. sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

Un résumé des méthodes de js appelant php et php appelant js

Une analyse simple de la méthode de débogage de node.js

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn