使用PHP MySQL的Ajax函数不调用php页面

时间:2012-12-06 20:59:40

标签: php mysql ajax

我有一个页面,列出了SQL数据库中的客户。它列出了他们留下的学分,我有一个按钮,我可以点击它来删除一个学分。它的工作方式是当你点击它调用一个Ajax函数的按钮时,该函数运行一个php页面,该页面可以重新获得一个信用额度并在此之后回复信用。

当我手动输入URL中的字符串时,php页面工作正常,但是smy Ajax函数必定是错误的。

这是列表格式:

while ($data = mysql_fetch_object($result)) {
    print "<TR><TD>".$data->pass_name."</TD><TD><span id='credit'>".$data->credit_left."</span></TD><TD><form><input type='submit' value='- 1' onsubmit='removeOneCredit(pass_id=".$data->pass_id."&credit_left=".$data->credit_left.")'></form></TD></TR>\n";

}

这是我的功能:

<script>
function removeOneCredit(str)
{
if (str=="")
  {
  document.getElementById("credit").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("credit").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","removeonecredit.php?"+str,true);
xmlhttp.send();
}
</script>

我不确定为什么功能不起作用。我知道removeonecredit.php正在发挥作用。

1 个答案:

答案 0 :(得分:0)

结果在函数参数中的=是一个问题,我在这里发布了一个关于如何逃避它的问题:Javascript escape a equal sign PHP