首页 > 解决方案 > 使用 jquery ajax 的用户登录表单无法正常工作,没有指向任何页面

问题描述

我正在尝试通过从数据库中的“reg”表中获取用户详细信息来使用 jquery ajax 创建登录表单。但它不起作用。我想在登录后进入另一个名为 menu.php 的页面。当我点击登录按钮时什么都没有显示有人可以帮忙吗

    <script type="text/javascript">
         $(document).ready(function(){

$('#loginForm').submit(function(event) {
          event.preventDefault();
             $.ajax({
                url: "logindata.php",
                type: "POST",
                data: {
                    username: $("#username").val(),
                    password: $("#password").val()
                },
                success: function(response)
                {
                    if(response == 1)
                    {
                        window.location.href = "menu.php";
                    }
                    else
                    {
                        $("#errorMessage").html("Attempting Login...");
                    }
                }
            });

           });
    });
            </script>

这是HTML:

<html>
<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
</head>
<center><b>Login</b></center><br>
                <form name="loginForm" id="loginForm"  action="" method="post" align="center">
       Username:    <input type="text" name="username" id="username"  /><br><br>
       Password:    <input type="password" name="password" id="password"  /><br><br><br>
                    <input type="submit" name="login" id="login" value="Sign In" />
                </form>

Mysql查询页面:

<?php
$conn =mysqli_connect("localhost", "root", "", "project");

$f="SELECT * FROM reg WHERE uname='" . $_POST["username"] . "' and password = '". $_POST["password"]."'";
$result = mysqli_query($conn,$f);
$row = mysqli_fetch_assoc($result);
if( $row[0] > 0 )
 {
        echo 'true';
    }
    else
    {
        echo 'false';
    }
    ?>

?>

标签: phpjqueryhtmlajaxmysqli

解决方案


尝试这个 :

change in jquery
$('#loginForm').submit(function(event) {
          event.preventDefault();
             $.ajax({
                url: "logindata.php",
                type: "POST",
                data: {
                    username: $("#username").val(),
                    password: $("#password").val()
                },
                success: function(response)
                {
                    if(response == 1)
                    {
                        window.location = menu.php;
                    }
                    else
                    {
                        $("#errorMessage").html("Attempting Login...");
                    }
                }
            });

           });

php的变化

<?php
$conn =mysqli_connect("localhost", "root", "", "project");

$f="SELECT * FROM reg WHERE uname='" . $_POST["username"] . "' and password = '". $_POST["password"]."'";
$result = mysqli_query($conn,$f);
$row = mysqli_fetch_assoc($result);
if( $row[0] > 0 )
 {
        echo 1;
    }
    else
    {
        echo 0;
    }
    ?>
exit;
?>

推荐阅读