亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

無刷新巨丑無比的表單驗證

Original 2018-11-13 13:22:54 1557
abstract:<!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8">     <title>Title</title&g
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <link rel="stylesheet" href="dist/css/bootstrap.css">
    <script src="jquery-3.3.1.js"></script>
    <script src="dist/js/bootstrap.js"></script>
    <style>
 .content{width: 100%;height:100%;background: #aaa;}
        .bg{background: #d4d6d6;}
        .btn-content{padding: 300px 0;}
    </style>
</head>
<body>

    <div class="content">
        <div class="container-fluid">
            <div class="row">
                <div class="col-md-8 col-md-offset-2 bg">
                    <div class="btn-content">
                        <button class="btn btn-lg btn-danger center-block" data-toggle="modal" data-target="#login">別點擊登錄</button>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="modal fade" id="login">
        <div class="modal-dialog">
            <div class="modal-content">
                <div class="modal-header">
                    <button class="close" type="button" data-dismiss="modal"><span>x</span></button>
                    <h3 class="modal-title">用戶登錄</h3>
                </div>
                <div class="modal-body">
                    <form action="" class="form-horizontal">
                        <div class="form-group">
                            <label for="email" class="col-sm-2 control-label">郵箱:</label>
                            <div class="col-sm-10">
                                <input type="text" name="email" id="email" class="form-control">
                            </div>
                        </div>
                        <div class="form-group">
                            <label for="password" class="col-sm-2 control-label">密碼:</label>
                            <div class="col-sm-10">
                                <input type="password" name="password" id="password" class="form-control">
                            </div>
                        </div>
                    </form>
                </div>
                <div class="modal-footer">
                    <div class="col-sm-10 col-sm-offset-2">
                        <span class="msg"></span>
                        <button class="btn btn-primary btn1">登錄</button>
                        <button class="btn btn-info" data-dismiss="modal">關閉</button>
                    </div>
                </div>
            </div>
        </div>
    </div>
<script>
 var btnDiv  = document.getElementsByClassName('btn-content')[0];
 var btn = document.getElementsByClassName('btn1')[0];
 btnDiv.style.height = document.documentElement.clientHeight+'px';
 btnDiv.style.paddingTop = (document.documentElement.clientHeight/2-20)+'px';
 btn.onclick = function(){
        var xhr = new XMLHttpRequest(); //創(chuàng)建一個xhr對象
        //監(jiān)聽響應狀態(tài)
        // console.log(xhr);
 xhr.onreadystatechange = function () {
            if(xhr.readyState == 4){
                if(xhr.status == 200){
                    var spans = document.getElementsByClassName('msg')[0];
 spans.style.color = 'red';
 var json = JSON.parse(xhr.responseText);
 if(json.status == 1){
                        spans.innerHTML = json.msg;
 }else if(json.status == 0){
                        spans.innerHTML = json.msg;
 }
                    btn.disabled = true;    //禁用btn
 setTimeout(function () {
                        btn.disabled = false;//恢復btn
 spans.innerHTML = '';
 if(json.status === 1){
                            window.location.href = 'admin.php';
 }
                    },3000);
 }else{
                    alert('響應失敗!'.xhr.status);
 }
            }
        }
        //設置請求參數(shù)
 xhr.open('post','inc/check.php',true);
 //設置頭信息將內(nèi)容類型設置為表單提交方式
 xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
 //發(fā)送請求參數(shù)
 var data = {
            email :document.getElementsByName('email')[0].value,
 password :document.getElementsByName('password')[0].value,
 };
 var data_json = JSON.stringify(data);   //將js對象轉為json字符串(其實就是文本)
        //發(fā)送參數(shù)格式化成數(shù)組樣式(依舊是字符串)
 xhr.send('data='+data_json);
 }

</script>
</body>
</html>
<?php
//登錄驗證;

$user = json_decode($_POST['data']);    //將json字符串轉為php對象
$email = $user->email;
$password = sha1($user->password);
$pdo = new PDO('mysql:host=127.0.0.1;dbname=zh','root','root');

//必須通過統(tǒng)計滿足條件記錄數(shù)來確定是否存在該用戶
$sql =  "SELECT COUNT(*) FROM `zh_user` WHERE `email`='{$email}' AND `password`='{$password}'";
$stmt = $pdo->prepare($sql);
$stmt->execute();
//判斷是否驗證成功?
if($stmt->fetchColumn(0) == 1){
    //返回一個數(shù)組['status'=>1,'msg'=>'登陸成功,正在跳轉...']轉為json字符串
    echo json_encode(['status'=>1,'msg'=>'登陸成功,正在跳轉...']);
    exit;
}else{
    echo json_encode(['status'=>0,'msg'=>'郵箱或密碼錯誤,請重試']);
    exit;
}

1.png2.png

3.png


Release Notes

Popular Entries