我已经被这几天难过了,并且看了很多不同的帖子而没有太多运气。
我使用jQuery进行AJAX调用,如下所示:
console.log("Sending post request");
var postData = {
"function": "connectToGame",
"name" : name,
};
console.log(postData);
$.ajax({
type: "POST",
url: 'http://localhost:8000/Cordova/server/database.php',
data: postData,
dataType: 'text',
success: function(data)
{
console.log("AJAX Success! See return:");
console.log(data);
var id = data[0]; //get id
console.log('Server returned: ' + id + ' as the id');
},
error: function(e){
console.log("AJAX Failure!");
console.log(e);
}
});
在删除了大量试图缩小问题范围的代码之后,我的server / database.php目前看起来像这样:
<?php
echo "1";
?>
进行AJAX调用后,控制台显示:
database.js:21 Sending post request
database.js:26 Object {function: "connectToGame", name: ""}
database.js:34 AJAX Success! See return:
database.js:35 <?php
echo "1";
exit;
?>
database.js:38 Server returned: < as the id
我完全不知道为什么AJAX调用会返回整个PHP文件,并且非常感谢任何帮助。
答案 0 :(得分:2)
您似乎没有正确配置您的网络服务器来解释PHP文件,并且无需任何处理即可返回其文字内容。很遗憾,您还没有提供有关服务器端设置的任何详细信息,因此很难提供帮助。但是如果您使用的是Apache,可以查看mod_php
,以便服务器评估您的PHP脚本,并将结果返回给客户端。因此,在尝试对客户端进行任何调用之前,请确保在http://localhost:8000/Cordova/server/database.php
处有一个正常工作的服务器端脚本。