同一php文件中,如何将Js代码中的变量,传递到php代码中。

<script language="javascript">
function test(){
var num = document.getElementById("category").value;
}
</script>
<?php
echo num;
?>
急求:将上面js代码中的num,能够在下面php代码中输出。最好将实现代码贴出来。

你没理解 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()函数,并将赋值。

function test(){
var x="abc";
$.ajax("test.php?x="+x);
}
test.php文件中
echo $_REQUEST["x"]并未获取到有效值。echo没有输出。
请问,这到底是什么原因。

追答

是因为 <script> 中并没有输出由 php 传回的结果.

改成这个试试看.

<script>
function test(){
   var x="abc";
   $.ajax("test.php?x="+x),null,function(data){alert(data)});
}
</script>

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-10-09
1. 在JS中设置COOKIE:document.cookie="cookiename="+value;
2. 在PHP中用$_COOKIE["cookiename"]的方式读取。
[PHP]

<script>
var name="num";
var value=document.getElementById("category").value;
document.cookie="num"+"="+value;
</script>

<?php
echo "$_COOKIE[‘num’]";
?>
第2个回答  2013-10-09
在js中用post或者get
相似回答