我想从没有页面刷新的mysql数据库中获取数据。我在客户端使用jquery ajax,在服务器端使用php。请求去了,但响应是空的(如果我在Firefox中使用xhr比请求好,没问题,但是当我点击answer / response时它是空的,请求的大小也是0)。没有任何错误,但什么也没发生。 这是我的script.js javascript文件:
$(document).ready(function(){
$.post("ajax.php",
{
task: "get_iron"
},
function(data)
{
$("#iron").html(data);
}
);
console.log("js doesn't have any problem");//it works fine
});
这是我的ajax.php文件:
<?php
$method = $_SERVER['REQUEST_METHOD'];
if(strtolower($method)=='post')
{
if(isset($_POST['task']) && $_POST['task'] == "get_iron")
{
$con = mysql_connect('myhost','myusername','mypassword');
if (!$con) {
die('Could not connect: ' . mysql_error($con));
}
$sql="SELECT iron FROM minerals WHERE username = 'martintamiya'";
$result = mysql_query($sql,$con);
$row = mysql_fetch_object($result);
echo json_encode($row);
}
}
&GT;
我应该使用$ .ajax而不是$ .post吗? 请帮帮我,注意我是初学者。 感谢您的回复。
答案 0 :(得分:1)
if(isset($_POST['task']) && $_POST['task' == "get_iron"])
这总是会返回false,因为你没有名为'task' == "get_iron"
的帖子字段,并且因为没有其他状态,所以它没有做任何事情。
if(isset($_POST['task']) && $_POST['task'] == "get_iron")
这就是你想要的。