Home > Web Front-end > JS Tutorial > How to pass js variable value to php

How to pass js variable value to php

不言
Release: 2018-07-14 11:39:07
Original
18646 people have browsed it

This article mainly introduces how to transfer js variable values ​​​​to php, which has a certain reference value. Now I share it with everyone. Friends in need can refer to it

1. Summary

Summary in one sentence: Pass parameters to the background and use ajax or native js to splice the url. Understand the principle and understand that the system first parses php and then executes html code and js code.

2. Use ajax

1. Submit data on the page: ajax

2. Get parameters on the php page: $val = $_POST['val']

Reference code (jquery):

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

Question:

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


As shown in the above code, how to pass the bid value from the document to the bid in the following PHP statement? ? ? ?

Answer:

不用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;);
Copy after login

One is on the server side and the other is on the client side.

Of course not.

I don’t understand why you need to use js to pass the value.

Can't you just use url parameters like this: test.php?bid=1?

It is more troublesome to implement it with js, because when you open the web page, you execute php first and then js. In other words, no matter where your js is placed, php will be executed before js is executed.

If you insist on using js to transfer values ​​​​to php, then you have to use ajax. This requires knowing your specific requirements.

Use AJAX to send to the background
proytype method:

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}
);
}
Copy after login

3. Insight into the system first parses php and then executes strings under other codes Splicing

This way

<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>
Copy after login

apache server will translate it first when the page is loaded 7 var url2='?dailyTaskDate=' dailyTaskDate; This sentence. After the php is translated, it is handed over to the browser.

This does not work, because php salted fish js is executed, so the dailyTaskDate variable in js will not be found, so a constant error is reported in php.

var dailyTaskDate=$(this).val();
document.location={:url(&#39;task/getDailyTaskData&#39;,array(&#39;dailyTaskDate&#39;=>dailyTaskDate))};
Copy after login

4. How to refresh the page in the ajax callback function

When doing demo, the callback function does not want to be troublesome, just refresh the page. Use location.reload(true); This sentence is equivalent to refreshing the page with the F5 key. This method may consume certain resources, but refreshing the page is still very convenient.

The following code can realize ajax refresh page, but it is of no use

<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>
Copy after login

The above is the entire content of this article, I hope it will be helpful to everyone's learning, more Please pay attention to the PHP Chinese website for related content!

Related recommendations:

Summary of methods for js to call php and php to call js

A simple analysis of the debugging method of node.js

The above is the detailed content of How to pass js variable value to php. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template