‘壹’ 如何把一个js变量传给php变量
js仅在 浏览器中运行.
php 仅在服务器端运行.
2者交互, 通常通过 http get/post 协议进行交互.
因此, 要将 js 变量传输到 php, 需通过 get/post 将参数传入.
譬如:
<script>
function test(){
var x="abc";
$.ajax("test.php?x="+x);
}
</script>
而 test.php 中, 通过 $_REQUEST["x"] 即可拿到js 请求过来的变量.
追问
感觉你的答案最符合我的需求,只是我还是碰到了问题。
test.php文件中
onchange事件触发test()函数,并将赋值。
<script>
function test(){
var x="abc";
$.ajax("test.php?x="+x);
}
test.php文件中
echo $_REQUEST["x"]并未获取到有效值。echo没有输出。
请问,这到底是什么原因。
追答
是因为 <script> 中并没有输出由 php 传回的结果.
改成这个试试看.
1
2
3
4
5
6
<script>
function test(){
var x="abc";
$.ajax("test.php?x="+x),null,function(data){alert(data)});
}
</script>
‘贰’ js如何传值给php
1:HTML中的值如何传到JS,下面假设是文件1.php
复制代码 代码如下:
<html>
<body>
<form action="1.php"
method="post">
name:<input type="text"
name="username" id="username">
rename:<input
type="text" name="username1" id="username1">
<input
type="button" value="submit" on CliCk="get()">
</form>
</body>
</html>
JS假如想取文本框中用户输入的name值,这样写
复制代码 代码如下:
<script
language='javaScript'>
function get()
{
var
n=document.getElementById('username').value;
alert
(n);
}</script>
这样的话在有调用JS
get()时就会弹出警示框,里面的内容就是name的值。
2:假如说JS中的这个取到的name值要传回rename的文本框中,这样写
复制代码 代码如下:
<script language='JavaScript'>
function get()
{
var n=document.getElementById('username').value;
document.getElementById("username1").value=n;
}</script>
这样的话在下面调用get()就会自动显示你上面name输入的值。
3:PHP中取页面的值
这个我想大家都会了吧
复制代码 代码如下:
<?php
$name=$_REQUEST["username"];
echo
$name;
?>
4:PHP的值传回页面
在HTML中插入PHP语言,可以调用PHP中变量的值,也可用Smarty(推荐)。
有了以上这些,不管是HTML页面里的值还是JS中变量的值,都可以轻松的传入PHP,当然,PHP的值也可传到想要的地方。
‘叁’ JS与PHP数据传输!
这种方法就是ajax数据传输,异步数据交互
//这里用到了jquery的插件,使用前需引用jquery.js
<script>
functionkeyUp(e){
varcurrKey=0,e=e||event;
currKey=e.keyCode||e.which||e.charCode;
//如果是空格
if(currKey==32){
$.ajax({
url:'save.php',
data:$('#id').val()
success:function(data){
alert(data);
}
});
}
}
document.onkeyup=keyUp;
</script>
具体代码请谷歌AJAX
‘肆’ js 如何获取值并传到php
两种方案:
1,如果你需要无刷新操作的话,就用AJAX异步操作就行了,将值附带了URL地址里面让PHP程序调用就行了。
2,如果你的页面是可以刷新的话,可以使用HIDDEN控件来实现,先用JS改变Hidden控件的值,然后刷新页面,用php来读取hidden控件的值就行了!
‘伍’ ajax从js中传数据给php,没反应,求各位帮忙看下
主要是data:{goodsNum:para}没有用引号,而且应该加载ajax模板,应该改为:
加入
<scriptsrc="js/jquery-3.3.1.min.js"></script>
然后修改为
data:{'goodsNum':'para'}
‘陆’ javascript用ajax向PHP传json格式数据,在PHP文件中应该怎样接
你传送之前
alert(json.key)
看一下有没有变为正确json数据。
也可以这样
for(var
i
in
json){
alert(i+":"+json[i]);
}
‘柒’ 如何把JS获取的数据传递给php
方法1 js的location 或 document 的url传值
方法2 js的submit提交
方法3 js的ajax
数据可以是简单的字符串 也可以是 json格式或 xml等
‘捌’ js如何用ajax传递变量给php
two.php
<?php
if($_GET){
file_put_contents("d:/a.txt",$_GET['pp_serverurl'],FILE_APPEND);
}
?>
<scripttype="text/javascript">
varpp_serverurl=1;
varpp_play=2;
submit(pp_serverurl,pp_play);
varxmlHttp;
functionsubmit(pp_serverurl,pp_play){
set_XMLHttpRequest();
xmlHttp.open("GET","two.php?pp_serverurl="+pp_serverurl+"&pp_play="+pp_play,true);
xmlHttp.send(null);
}
functionset_XMLHttpRequest(){
if(window.ActiveXObject){
xmlHttp=newActiveXObject('Microsoft.XMLHTTP');
}elseif(window.XMLHttpRequest){
xmlHttp=newXMLHttpRequest();
}
}
</script>
如果你只想把值传给php,这样就够了,希望对你有用。
‘玖’ js获取到的值如何用ajax传到php中
$.ajax({type:"",url:"",data:"",dataType:"json",success:function(data){
//这里处理返回的结果
//type为数据提交的方式post或者get
//data表示要提交的数据方式为{name1:value1,name2:value2.....等等}
//dataType表示数据处理后返回的数据类型一般返回json的数据类型使用$.each进行循环操作
//success表示数据请求成功后执行的动作
}});
‘拾’ 用jquery的ajax怎么传递js得到的变量,传递到php页面
$.ajax({
url:"htt...网址略.../xxx.php?a="+变量值,
......
或者
$.ajax({
url:"htt...网址略.../xxx.php",
type:"GET",
data:{
a:'变量值'
}
......
php中可以用$_GET["a"]获取