我有一小段代码,我需要有人给我一些帮助,以确定我犯的错误在哪里。我感谢您提供的任何帮助。
$('#username').change(function()
{
$.ajax(
{
type:"POST",
url:'login.php'
//datatype:'html'
}
).done(function(data)
{
$('#info').html(data);
}
);
});
我的登录.php包括使用 mysqli 函数连接到数据库并检查用户是否已经存在等等等等。
function query($query)
{
$mysqli = new mysqli('localhost','root', 'okazaki', 'gene_database');
if (mysqli_connect_errno())
{
printf("Connect failed: %sn", mysqli_connect_error());
exit();
}
if($result=$mysqli->query($query))
{
while($row=$result->fetch_assoc())
{
$data[]=$row;
}
$mysqli->close();
print_r($data);
return $data;
}
else
{
printf("Unable to query data");
$mysqli->close();
return null;
}
}
> echo $data
不是返回它,return
不输出任何内容,它只是返回它(在服务器级别)
(编辑:抱歉错过了您问题中的print_r
)
在哪里调用您的query
函数?在您发布的示例中,它不是。您可以在 ajax 请求中添加另一个属性,例如 action: 'checkUser'
或类似属性,然后在login.php
检查$_POST['action']
是否checkUser
,如果是,则运行 query
函数。
此外,您实际上并没有发送任何数据来检查您的 ajax 请求,查看您的示例,您应该发送用户名 ( $('#username').val()
) 的值,以便构建要传递给query
函数的$query
。
希望这能为你指明正确的方向。