如何将javascript值发送到PHP页面,然后在PHP页面中引用该值?

时间:2012-06-16 09:13:26

标签: php ajax

如何将javascript值发送到PHP页面,然后在PHP页面中引用该值?

假设我有某种javascript AJAX解决方案,例如:

var id=5;
      obj.onreadystatechange=showContent;
      obj.open("GET","test.php",true);
      obj.send(id);

我想在test.php中使用这个特定的id。我怎么能这样做?

3 个答案:

答案 0 :(得分:2)

将您的代码更改为:

obj.open("GET","test.php?id=" + id,true);
obj.send();

然后在test.php中使用$_GET['id']

答案 1 :(得分:2)

在javascript中(我正在创建一个函数,因此您可以将其分配给其他事件)

//jQuery has to be included, and so if it's not, 
//I'm going to load it for you from the CDN, 
//but you should load this by default in your page using a script tag, like this:
//<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
window.jQuery || document.write('<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"><\/script>')

function sendValueGet(passedValue){
  jQuery.get('test.php', { value: passedValue });
}
function sendValuePost(passedValue){
  jQuery.post('test.php', { value: passedValue });
}

然后在你的PHP中:

<?php
if( $_REQUEST["value"] )
{
   $value = $_REQUEST['value'];
   echo "Received ". $value;
}
?>

请注意,我在javascript“object”{ value: ... }和PHP“REQUEST”变量$_REQUEST["value"]

中使用“value”

如果你想给它一个不同的参考名称,那么你需要在两个地方都改变它。

使用GET或POST是您的首选。

答案 2 :(得分:1)

// GET

if (window.XMLHttpRequest)
{
  xmlhttp=new XMLHttpRequest();
}
else
{
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
  {
    var x=xmlhttp.responseText;
    alert(x);
  }
}
xmlhttp.open("GET","test.php?q="+id,true);
xmlhttp.send();

在test.php中

$id=$_GET['q']

// POST

if (window.XMLHttpRequest)
{
  xmlhttp=new XMLHttpRequest();
}
else
{
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
  {
    var x=xmlhttp.responseText;
    alert(x);
  }
}
xmlhttp.open("POST","test.php",true);
xmlhttp.send("x=id");

在test.php中

$id=$_POST['x']