本文目录一览:
PHP如何获取JS变量及变量的值
可以使用ajax技术,对变量用post方式提交,例如:
function ShowResult()
{
sqlstr="book";
dt="sql=" + sqlstr;
//window.alert(dt);
xmlhttp=new XMLHttpRequest();
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 xmlhttp.status==200)
{
document.getElementById("txtres").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("POST","listBook.php",true);
xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xmlhttp.send(dt);
return;
}
html代码:
input name="btn" type="button" id="btn" onclick="ShowResult()" value="点击查询" /
php调用js变量
php和js是两码事!
php是服务器端脚本语言,
运行与服务器端(比如Apache、iis等)
js是客户端脚本,
运行于客户端(比如浏览器)
运行顺序也不同,
php先运行,js后运行!
js变量可以用php生成,
因为php先运行,
可以输出js变量到浏览器!
php变量必须由php本身生成,
js不能给php生成变量!
php获取js变量的值
搞得这么麻烦干嘛;
js中的变量传递到PHP很简单,就是ajax就可以了,如果载入了jquery的话
$("a").click(function(){
if(confirm('查看本条信息,将扣除您10积分;如您不想查看,请点击取消。'){
$.get("srcipt.php?tid=文章IDuid=用户ID",function(data){
if(data==1){
//修改积分成功
}else{
// 修改积分不成功
}
})
}
})
服务端 srcipt.php
通过$_GET获得文章ID和用户ID,对数据库做操作扣除积分;如果扣除成功就echo 1;
如果扣除不成功就echo 0;
上面的js变量 怎么在下面php语句中输出
js中的变量是不能直接用php获取的
因为:
1、php和js是完全2种不同的语言,php看不懂js
2、php是在服务器端的,js是在客户端的,也就是,当浏览器解析完js的时候,php早就在服务器端运行完毕了
所以只能间接去完成,把js变量附加到url或表单中,重新请求服务器,执行php,php再使用post或get方式获取这个变量