JSONP实现登录(pdo预处理)

Posted jiangshiguo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSONP实现登录(pdo预处理)相关的知识,希望对你有一定的参考价值。

<!DOCTYPE html>
<html>
<head>
    <title>登录</title>
    <meta charset="utf-8">
</head>
<body>
        <input type="text" name="username" class=‘username‘ placeholder="请输入账号">
        <span class="s1"></span>
        <br>
        <input type="password" name="password" class=‘password‘ placeholder="请输入密码">
        <span class="s2"></span>
        <br>
        <input type="submit" class="submit" value="登录">
</body>
</html>
<script src=‘jquery-3.3.1.min.js‘></script>
<script>
    $(.submit).click(function()
        var username = $(.username).val();
        var password = $(.password).val();
        
        if(username.length==0)
            $(.s1).html("<font color=‘red‘>账号不能为空</font>");
            return false;
        

        var reg = /^[a-zA-Z]6$/;
        if(reg.test(username)==false)
            $(.s1).html("<font color=‘red‘>账号必须是6位数字母</font>");
            return false;
        

        $(.s1).html("<font color=‘green‘>检测合格</font>");

        if(password.length==0)
            $(.s2).html("<font color=‘red‘>密码不能为空</font>");
            return false;
        

        var pass_reg = /^\w3,$/;
        if(pass_reg.test(password)==false)
            $(.s2).html("<font color=‘red‘>密码最少3位数</font>");
            return false;
        

        $(.s2).html("<font color=‘green‘>检测合格</font>");

        $.ajax(
            url:login.php,
            type:post,
            dataType:jsonp,
            jsonpCallback:Liyue,//处理后台返回的数据
            data:
                username:username,
                password:password
            ,
            success:function()
                console.log(请求完成);
            
        )

    )

    function Liyue(data)
        alert(data.msg);
    
</script>

 

 

 

php代码:

<?php
header("Content-type:text/html;charset=utf-8");
//接收传值
$username = $_POST[‘username‘];
$password = $_POST[‘password‘];

//接收回调函数
$callback = $_GET[‘callback‘];

$pdo = new PDO(‘mysql:host=127.0.0.1;dbname=1703a‘,‘root‘,‘root‘);
$sql = ‘select * from user1 where username=? and password=?‘;
$query = $pdo->prepare($sql);
$query->execute([$username,$password]);
$data = $query->fetch(2);
if(empty($data))
    $res = json_encode([‘code‘=>400,‘msg‘=>‘账号密码有误‘,‘data‘=>null]);
else
    $res = json_encode([‘code‘=>200,‘msg‘=>‘登录成功‘,‘data‘=>null]);


echo $callback.‘(‘.$res.‘)‘;

 

以上是关于JSONP实现登录(pdo预处理)的主要内容,如果未能解决你的问题,请参考以下文章

PDO异常处理

PDO中的事务处理

jquery jsonp请求错误处理

PHP中的PDO操作学习预处理语句及事务

数据库的事务处理---PDO实现

在 ZEND 中处理 JSONP 调用