我的javascript文件中有一个XML请求,该请求没有将我的变量正确地传输到PHP,而且我不知道为什么。我可能会缺少某种参考图书馆吗?
这是有问题的功能。我确实知道str变量具有我想要的内容。我将旧的试用代码留在注释中,以防万一您想看看我尝试了什么。
function PHP_Con(str)
{
var xmlhttp;
if (str=="")
{
document.getElementById("txtHint").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("txtHint").innerHTML=xmlhttp.responseText;
}
}
if(!xmlhttp)
{
alert("Fehler");
}
else
{
/*$.ajax({
type:"POST",
url:"dbConnection.php",
data:{"test" : "str"},
success:function()
{
alert("success");
}
});*/
alert(str);
xmlhttp.open("GET","dbConnection.php?test="+str,true);
// Requestheader senden
xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
// Request senden
xmlhttp.send();
/*var json_string= JSON.stringify(str); // convert it into a json string.
$.post('dbConnection.php' , {test : json_string },function(){
alert("success");
}); */
}
}
这是我对应的PHP代码:
$test = intval($_POST['test']);
echo $test;
另外,我知道isset,但是我试图显示该变量。我宁愿在不存在时得到一个错误,如果那是因为...
非常感谢你。:)如果有更简单的方法可以做到这一点,我也会对此感兴趣。
但是到目前为止,我觉得我确实需要一个调用JS函数的Form,然后我的JS会从用户输入中检索变量,然后将这些变量转到PHP,以便可以对我的数据库进行检查...在我看来,这一切似乎都是对的,但是我承认对JS变量在PHP中的显示方式以及PHP如何以HTML代码反映的方式做出响应的看法不是很清楚。例如,我会想要将比较结果(用户输入与数据库内容进行比较)“回显”到ap中的范围,而我不知道该怎么做...
您正在发送GET请求,因此您必须使用$_GET
而不是$_POST
$test = intval($_GET['test']);
echo $test;
POST请求看起来像
xmlhttp.open("POST","dbConnection.php",true);
// Requestheader senden
xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
// Request senden
xmlhttp.send("test="+encodeURIComponent(str));
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句