PHP AJAX POST发送多个变量

时间:2011-08-26 10:23:28

标签: php ajax

带有ajax帖子到php我可以发送多个变量,如果是这样的话语法是什么?

loadXMLDoc("scripts/product_transfer.php?group="+group+"subgroup="+subgroup+"user="+user+,function()

类似的事情?

这是功能代码:

//---------------------------------------------------------------------------------------------------    -----------------------------------------------------------------------
//Function to handle ajax
function loadXMLDoc(url,cfunc)
{
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=cfunc;
xmlhttp.open("POST",url,true);
xmlhttp.send();
}

5 个答案:

答案 0 :(得分:6)

是的,你可以但你忘记了值之间的&。您还可以使用POST方法将数据作为参数发送到send()方法。另外,请不要忘记在字符串值上使用encodeURIComponent()

xmlhttp.open( "POST", url, true );
xmlhttp.send( "group="+encodeURIComponent(group)+
              "&subgroup="+encodeURIComponent(subgroup)+
              "&user="+encodeURIComponent(user) );        

答案 1 :(得分:1)

你应该添加&或'& amp';在查询字符串中的不同变量之间,如

scripts / product_transfer.php?group =“+ group +”& subgroup =“+ subgroup +”& user =“+ user

答案 2 :(得分:1)

试试这个!

loadXMLDoc("scripts/product_transfer.php?group="+group+"&subgroup="+subgroup+"&user="+user+, function() { //Code to run when data is sent back});

答案 3 :(得分:1)

我为此编写了代码及其工作,

页面-1。

<select name="qt_n1" id="qt_n1" style="width: 100px;" onchange="return q1mrks(this.value,<?php echo $gen1_marks; ?>)">
                                <option>No. of Que.</option>
                                <?php
                                    for($i=1;$i<=25;$i++){?>
                                        <option value="<?php echo $i; ?>"><?php echo $i; ?></option>
                                <?php } ?>
                            </select>

页面2.js

function q1mrks(country,m)
{
  // alert("hellow");
if (country.length==0)
  {
   //alert("hellow"); 
  document.getElementById("q1mrks").innerHTML="";
  return;
  }
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("q1mrks").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","../location/cal_marks.php?q1mrks="+country+"&marks="+m,true);

//mygetrequest.open("GET", "basicform.php?name="+namevalue+"&age="+agevalue, true)
xmlhttp.send();
}

我只是在第三页上获得了值

页面3.php

<?php 
    echo $Q1mrks = $_GET['q1mrks'];
    echo $marks = $_GET['marks'];
?>
<div id="q1mrks"></div>

谢谢,

答案 4 :(得分:0)

data="postvarname1="+varvalue+"postvarname2"+var

&安培;等等......