gpt4 book ai didi

php - Ajax 请求在我的 php 代码中不起作用

转载 作者:行者123 更新时间:2023-11-29 22:21:11 25 4
gpt4 key购买 nike

我正在向一个 php 页面发送 ajax 请求,在其中检查我的用户名和密码。这是可能的ajax代码:

success: function(response)
{
if(response === "success"){
$(location).attr('href','adminHome.php');
}
else
$("#message").html('<p class="error">ERROR: Invalid username and/or password.'+response+'</p>');
}

在 php 代码中,我正在连接到数据库。并检查用户名密码是否存在。

这是我的 php 代码

  $sql="SELECT * FROM mainadmin where username='$username' and password='$password'";
$result = mysql_query($sql);
$numrows = mysql_num_rows($result);
while ($row = mysql_fetch_array($result))
{
echo $row['username']." ".$row['password'];
}
if($numrows>0)
{
$_SESSION['username'] = $username;
echo "success";
}

正确的用户和密码从数据库返回,但没有重定向到 adminHome.php 页面。我在这里犯了什么错误?代码始终执行 ajax 中成功的 else 部分,显示警告消息。

最佳答案

试试这个代码

  $sql="SELECT * FROM mainadmin where username='$username' and password='$password'";
$result = mysql_query($sql);
$numrows = mysql_num_rows($result);
$row = mysql_fetch_array($result);

if($numrows>0)
{
$_SESSION['username'] = $username;
echo "success";
} else {
echo 'error';
}

我认为问题是因为您回显了用户名和密码,然后成功,因此当您检查 $result 的值时,它与您认为的不相等。

我真心希望您也能清理 $username 和 $password 变量,并且我建议您迁移到使用 PDO 而不是 mysql_ 函数,因为它们已被弃用,并将在不久的将来从 PHP 中删除。如果您不能或不想使用 PDO,那么只需迁移到使用 mysqli_* 函数或对象即可。不过,我强烈建议您采用 PDO 的方式,为变量绑定(bind)参数。

关于php - Ajax 请求在我的 php 代码中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30695837/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com