阿贾克斯的mysqli不工作工作、阿贾克斯、mysqli

由网友(人间疾苦)分享简介:任何人都可以电话我出了什么问题?Can anyone tel me what went wrong?这是我的code:body.html body.html
任何人都可以电话我出了什么问题?

Can anyone tel me what went wrong?

这是我的code:

body.html

body.html

    <div class="container">
        <div id="login_form">
            <form action="login.php" class="form-signin">
                <h3 class="form-signin-heading">Sign in</h2>
                <div class="err" id="add_err"></div>
                <label for="inputUser" class="sr-only">Email address</label>
                <input type="text" name="inputUser" id="inputUser" class="form-control" placeholder="Username" required autofocus>
                <label for="password" class="sr-only">Password</label>
                <input type="password" name="password" id="password" class="form-control" placeholder="Password" required>
                <div class="checkbox" style="padding-top:20px;">
                    <label>
                        <input type="checkbox" value="remember-me"> Remember me</input>
                    </label>
                </div>
                <button class="btn btn-lg btn-primary btn-block" id="login" type="submit">Sign in</button>
                <a href="../" class="btn btn-lg btn-default btn-block">Cancel</a>
            </form>
        </div>
        <div id="shadow" class="popup"></div>

    </div>

    <script src="myjs/myjs.js">
    </script>

myjs.js

myjs.js

        $(document).ready(function(){
            $("#login").click(function(){
                $("#add_err").removeClass("alert");
                $("#add_err").addClass("alert");
                $("#add_err").removeClass("alert-danger");
                $("#add_err").addClass("alert-info");
                if($("#inputUser").val() == "")
                {
                    $("#add_err").removeClass("alert-info");
                    $("#add_err").addClass("alert-danger");
                    $("input[name='password']").val("");
                    $("#add_err").html("User Empty")
                }
                else if($("#password").val() == "")
                {
                    $("#add_err").removeClass("alert-info");
                    $("#add_err").addClass("alert-danger");
                    $("input[name='password']").val("");
                    $("#add_err").html("Password Empty")
                }
                else{
                    username=$("#inputUser").val();
                    password=$("#password").val();
                    $.ajax({
                        type: "POST",
                        url: "login.php",
                        data: "name="+username+"&pwd="+password,
                        success: function(html){
                            if(html=='true')
                            {
                                window.location.href = "example/admin.html";

                            }
                            else
                            {
                                $("#add_err").removeClass("alert-info");
                                $("#add_err").addClass("alert-danger");
                                $("input[name='password']").val("");
                                $("#add_err").html("Wrong username or password");
                            }
                        },
                        beforeSend:function()
                        {
                             $("#add_err").html("Loading...")
                        }
                    });
                }
                return false;
            });
        });

的login.php

login.php

<?php
session_start();
$username = $_POST['name'];
$password = md5($_POST['pwd']);
$mysqli=mysqli_connect('localhost','root','','whatever');

$query = "SELECT * FROM user WHERE username='$username' AND password='$password'";
$result = mysqli_query($mysqli,$query)or die(mysqli_error());
$num_row = mysqli_num_rows($result);
$row=mysqli_fetch_array($result);
if( $num_row >=1 ) {
    echo 'true';
    $_SESSION['user_name']=$row['username'];
}
else{
    echo 'false';
}
?>

这code是工作!

但是,当我改变的login.php面向对象的方法不是程序是这样的:

But when I change the "login.php" with OOP way not procedural like this:

<?php
session_start();
$username = $_POST['name'];
$password = md5($_POST['pwd']);
$con = new mysqli("localhost", "root", "", "whatever");

$query = "SELECT * FROM user WHERE username='$username' AND password='$password'";
$result = $con->query($query);
$num_row = $result->num_rows;
$row=$result->fetch_array();
if( $num_row >=1 ) {
    echo 'true';
    $_SESSION['user_name']=$row['username'];
}
else{
    echo 'false';
}
?>

它没有工作。谁能告诉我问题出在哪里?

It did not work. Can anyone tell me what went wrong?

推荐答案

没有仔细检查你的code,最明显的区别就是你没有使用在session_start()在第二个脚本;这意味着没有任何会话存储在... ...的用户名

Without closely examining your code, the most obvious difference is you didn't use session_start() in the second script; meaning there isn't any session to store the username in...

阅读全文

相关推荐

最新文章