我正在尝试使用ajax检查数据库中是否存在用户名。我不知道为什么它不起作用,我尝试了很多事情,但仍然一无所获。
这是我实际上正在尝试的代码。 php代码有效,但不会将结果发送到ajax函数
html> Registration.php
lxml
php> Welcome.php
<input class="form-control" onblur="checkUser()" id="Pseudo" type="text name="Pseudo" value="" required>"
<span id="availability" name="availability" value=""> </span>
Javascript> Registration.php
if(!empty($_POST['Pseudo']))
{
$pseudo = $_POST['Pseudo'];
$connexion = mysqli_connect('localhost', 'root', '', 'database');
if(!$connexion)
{
die('Error during connexion ');
}
$sql = "SELECT * FROM Web_database WHERE Pseudo='$pseudo'";
$result = mysqli_query($connexion, $sql);
echo mysqli_num_rows($result);
}
}
答案 0 :(得分:0)
首先,您可以优化SQL:
$sql = "SELECT COUNT(*) FROM Web_database WHERE Pseudo='$pseudo'"
代替使用mysqli_num_rows()
。
You are also opening yourself up to SQL injection unless you use prepared statements.
对于您的AJAX,这似乎没有错。 I found this question to be very similar,因此您可能需要检查一下。如有疑问,请console.log()
来自PHP的响应以查看实际返回的内容。还是更好,add a breakpoint。