Ajax配合jQuery和数据库

Ajax配合jQuery和MySQL 实现页面局部刷新 直接提交到数据库中 减轻服务器的负担 无需刷新页面,减少用户实际的等待时间 话不多说上图和源代码 下面是ajax的代码

 登录界面HTML代码需要引入booststrap框架

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>登录页面</title>
    <script src="js/jq214.js"></script>
    <link rel="stylesheet" href="bootstrap-3.4.1-dist/css/bootstrap.css">
    <link rel="stylesheet" href="bootstrap-3.4.1-dist/css/bootstrap.min.css">
    <link rel="stylesheet" href="css/style.css">
    <script src="js/ajax.js"></script>
    <script src="js/yanzhengma.js"></script>

</head>

<body>

    <div class="denglu">
        <form class="zujian">
            <h3>用户登录</h3>
            <div class="form-group">
                <div class="input-group">
                    <!-- <span></span> -->
                    <span class="input-group-addon" id="basic-addon1"><span class="glyphicon glyphicon-user"></span></span>
                    <input type="text" name="user" class="form-control" placeholder="请输入账号" aria-describedby="basic-addon1" id="btn">
                </div>
            </div>
            <div class="form-group">
                <div class="input-group">
                    <span class="input-group-addon" id="basic-addon2"><span class="glyphicon glyphicon-lock"></span></span>
                    <input type="password" name="password" placeholder="请输入密码" class="form-control" id="btn05" aria-describedby="basic-addon2">
                </div>
            </div>
            <div class="form-group">
                <p align="center"><input type="text" name="code" placeholder="请输入验证码" class="form-control col-lg-4" id="btn04"> <span class="yanzm" id="code"></span><span class="yanzm2 " id="click">看不清换一张</span></p>
            </div>
            <div class="btnan">
                <button id="btn01" onclick="denglu()" class="btn btn-info ">登录</button>&nbsp;<button class="btn btn-info"><a href="zhuce.html ">注册</a></button>
            </div>
        </form>
    </div>
</body>

</html>

 登录界面连接数据库代码以及操作数据库代码

<?php
$servername = "localhost";
$username = "root";
$password = "12345678";
$dbname = "test";
$conn = new mysqli($servername, $username, $password, $dbname);
// 中文字符集
mysqli_query($conn, "set names utf8");
header("content-Type:text/html;charset=utf-8");
// 获取数据
$user=$_GET["user"];
$password=$_GET["password"];
setcookie('user',$user,time()+3600*12);
setcookie('password',$password,time()+3600*12);
// echo'您的用户名是'.$_COOKIE['user'];
// echo'您的密码是'.$_COOKIE['password'];
// die();
$sql="select * from `user` where user='$user' and password='$password'";
// die($sql);
$re=$conn->query($sql);
// 判断用户是否存在
if($re->num_rows > 0){
    die('登录成功');
}else{
    die("用户不存在");
}

Ajax代码需要引入jq文件

function denglu() {
    var user = $('#btn').val();
    var password = $('#btn05').val();
    var yzm = $('#btn04').val();
    if (user == '') {
        alert('用户名不能为空')
        $('#btn').foucs()
    } else if (password == '') {
        alert('密码不能为空')
        $('#btn05').foucs()
    } else if (yzm != $('#code').html()) {
        alert('验证码错误')
        $('#btn05').foucs()
    } else {
        $.ajax({
            type: "get",
            url: "php/denglu.php?user=" + user + "&password=" + password,
            dataType: "text",
            success: function(data) {
                if (data == '登录成功') {
                    window.location.href = "liuyan.html"
                } else {
                    alert(data);
                }
            },
            error: function(data) {
                alert("系统出错,请联系开发人员")
            }
        });
    }
}

注册界面HTML代码

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="css/bootstrap.min.css">
    <link rel="stylesheet" href="css/bootstrap.css">
    <script src="js/jq214.js"></script>
    <script src="js/ajax.js"></script>
    <link rel="stylesheet" href="css/register.css">
</head>

<body>
    <div class="bd">
        <div class="ad">
            <dd style="color: white;font-size: 80px;">用科技</dd>
            <dd style="color: white;font-size: 50px;">让复杂的世界更简单</dd>
        </div>
        <form class="zujian">
            <div class="left-top">
                <h3>欢迎注册</h3>
                <p style="font-size: 10px;">已有账号?<span><a href="denglu.html">登录</a></span></p>
            </div>
            <div class="biaodan">
                <table>
                    <tr>
                        <td><span>用户</span></td>
                        <td><input type="text" name="user" id="username" placeholder="请输入用户名"></td>
                    </tr>
                    <tr class="jianju">
                        <td><span>密码</span></td>
                        <td><input type="password" name="password" id="password" placeholder="密码"></td>
                    </tr>
                    <tr class="jianju">
                        <td>密码</td>
                        <td><input type="password" name="repassword" id="repassword" placeholder="确认密码" required></td>
                    </tr>
                </table>
                <div class="button">
                    <p alignn="center"> <button class="btn btn-primary btn-lg btn-block" type="submit" id="btn02" onclick="register()">注册</button></p>
                    <span style="font-size: 6px;text-align: center"> <input type="checkbox"> 阅读并接受<a>《百度用户协议》</a>及<a>声明</a></span>
                </div>
            </div>
        </form>
    </div>
</body>

</html>

注册界面php部分

<?php
$servername = "localhost";
$username = "root";
$password = "12345678";
$dbname = "test";
$conn = new mysqli($servername, $username, $password, $dbname);
// 中文字符集
mysqli_query($conn, "set names utf8");
header("content-Type:text/html;charset=utf-8");

// 获取数据
$user = $_GET["user"];
$password = $_GET["password"];
$time = date("Y-m-d H:i:s", time() + 8 * 60 * 60);
// 查询
$sql = "select * from user where user='$user'";
$result = $conn->query($sql);
// echo $result;
// die();
if ($result->num_rows > 0) {
    die("账户已存在");
} else {
    $sql = "insert into `user`(user,password,times) values('$user','$password','$time')";
    // echo $sql;die();
    $pd = $conn->query($sql);
    if ($pd) {
        die('注册成功');
    } else {
        die('注册失败');
    }
};
?>

注册界面Ajax部分

function register() {
    var user = $('#username').val();
    var password = $('#password').val();
    var repassword = $('#repassword').val();
    if (user == '') {
        alert('用户名不能为空')
    } else if (password == '') {
        alert('密码不能为空')
    } else if (password != repassword) {
        alert('两次密码不一致')
    } else {
        $.ajax({
            type: "get",
            url: "php/zhuce.php?user=" + user + "&password=" + password,
            dataType: "text",
            success: function(data) {
                if (data == '注册成功') {
                    window.location.href = "denglu.html";
                } else {
                    alert(data);
                }
            },
            error: function(data) {
                alert("系统出错,请联系开发人员")
            }
        });
    }
}

注册界面css部分

.bd {
    width: auto;
    height: auto;
}

body {
    background-image: url(../img/1.jpg);
}

.zujian {
    background-color: #f8f9fa !important;
    width: 350px;
    opacity: 0.65;
    height: 500px;
    float: right;
    margin-top: 150px;
    margin-right: 100px;
    border-radius: 10px;
}

.ad {
    margin-top: 220px;
}

.left-top {
    margin-left: 40px;
}

.left-top p {
    margin-top: -10px;
    color: grey;
}

input {
    border-radius: 5px;
}

.biaodan {
    margin-left: 40px;
    margin-top: 40px;
}

span {
    color: grey;
}

.top {
    margin-top: 20px;
}

table {
    margin-top: -20px;
    height: 300px;
    border-collapse: separate;
    border-spacing: 5px;
}

.button {
    margin-right: 30px;
}

.ad {
    float: left;
    position: relative;
}

登录页面css代码

body {
    background-image: url(../img/1.jpg);
}

.zujian {
    width: 300px;
    height: 280px;
    background-color: white;
    opacity: 0.85;
    margin: auto;
    margin-top: 200px;
    border-radius: 5px;
    padding: 10px;
}

.denglu h3 {
    color: red;
    text-align: center;
    padding: 10px;
    margin-top: 0px;
}

a {
    color: black;
}

.btnan {
    margin-left: 90px;
}

.yanzm {
    background-color: antiquewhite;
}

最后上效果图

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值