Parse.com未登录用户

时间:2015-12-08 08:03:10

标签: javascript jquery html5 parse-platform

我使用Parse.com作为后端制作了一个登录系统,对于我的生活,我无法弄清楚为什么这对我的代码不起作用。当用户输入他们的用户ID和密码时,应该检查解析数据库,如果找到,则根据他们的角色登录。 (基本上将它们发送到menu1,menu2或menu3)。如果它找不到它们,则应该创建一个警告说"密码用户名不正确"并清除表格。

如果您点击“登录”'按钮截至目前它没有做任何事情

create_account.html使用用户名和密码在Parse数据库中注册用户,因此我知道它已连接....我只是无法登录。

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <!--Bootstrap-->
        <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
        <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
        <!--Parse-->
        <script type="text/javascript" src="http://www.parsecdn.com/js/parse-latest.js"></script>
        <script src="//www.parsecdn.com/js/parse-1.6.7.min.js"></script>
        <!--Javascript-->
        <!--Stylesheet-->
        <link rel="stylesheet" type="text/css" href="css/login.css">
        <title>index.html</title>
    </head>

    <body>
        <div class="container">             
            <div class="row">
                <div class="col-xs-12">
                    <h1>Study App</h1>
                    <h2>Please Sign In</h2>
                    <form class="form-signin">
                        <div class="form-group">
                            <input type="text" class="form-control" id="userID" placeholder="User ID">
                        </div> <!--end User ID-->       
                        <div class="form-group">
                            <input type="password" class="form-control" id="password" placeholder="Password">
                        </div> <!--end Password-->
                            <a href="urltt">Forgot Password?</a> <!--Not implemented yet-->
                        <button type="button" class="btn btn-lg btn-block btn-primary">Sign In</button>
                    </form> <!--end SIGN IN FORM-->
                </div> <!--END COLUMN-->
            </div> <!--END ROW-->


            <div class="row">
                <div class="col-xs-12">
                    <div id="add_User">
                        <img src="img/add_user.png" alt="Add User Icon" height="42" width="42">
                        <p><a href="create_account.html">Create Account</a></p>
                    </div>
                </div> <!--END COLUMN-->
            </div> <!--END ROW-->       

        </div> <!--end container-->
        <script src="js/login.js"></script>
    </body>
</html>

login.js

    $(function() 
{
   Parse.$ = jQuery;
   Parse.initialize("x", "y"); <!--Removed for security-->
});


$('.form-signin').on('submit', function(e) 
{ 
    e.preventDefault();
    var data = $(this).serializeArray(),userID = data[0].value,password = data[1].value;        

    Parse.User.logIn(username, password, {
        success: function (user) {
            var queryRole = new Parse.Query(Parse.Role);
            if(queryRole.equalTo('name', 'Student')) {
                window.location = "menu1.html"
            }
            else if (queryRole.equalTo('name', 'Tutor')) {
                window.location = "menu2.html"
            }
            else {
                window.location = "professor/professor-menu3.html"
            }
        },
        // If there is an error
        error: function (user, error) {
            console.log(error);
            alert("Username or Password incorrect");
            $(".form-signin")[0].reset();
        }
    });

});

1 个答案:

答案 0 :(得分:0)

您设置了add_theme_support('post-thumbnails'); add_post_type_support( 'my_product', 'thumbnail' ); function create_post_type() { register_post_type( 'my_product', array( 'labels' => array( 'name' => __( 'Products' ), 'singular_name' => __( 'Product' ) ), 'public' => true, 'has_archive' => true ) ); } add_action( 'init', 'create_post_type' ); userID

password

然后您使用var data = $(this).serializeArray(),userID = data[0].value,password = data[1].value; username

password

此外,如果您在表单中添加了其他字段,那么您获取Parse.User.logIn(username, password, { userID的方式对我来说似乎有点危险。

我建议您切换到:

password

代替。

此外,您的表单中没有提交按钮。变化:

var username = $('#userID').val();
var password = $('#password').val();

为:

<button type="button" class="btn btn-lg btn-block btn-primary">Sign In</button>