php - ajax session 登陆要刷新才能出数据
天蓬老师
天蓬老师 2017-04-10 15:31:03
[PHP讨论组]

php

<?php
session_start();
include ('conn.php');

$action = $_GET['action'];
if ($action == 'login') {  //登录
    $email = $_POST['email'];
    $pass = $_POST['password'];
    if (empty ($email)) {
        echo '邮箱不能为空';
        exit;
    }
    if (empty ($pass)) {
        echo '密码不能为空';
        exit;
    }
    // $md5pass = md5($password);
    $query = mysql_query("select * from user where email='$email'");

    $us = is_array($row = mysql_fetch_array($query));

    $ps = $us ? $pass == $row['password'] : FALSE;
    if ($ps) {
        $counts = $row['login_counts'] + 1;
        $_SESSION['email'] = $row['email'];
        $_SESSION['login_time'] = $row['login_time'];
        $_SESSION['login_counts'] = $counts;
        $ip = get_client_ip();
        $logintime = mktime();
        $rs = mysql_query("update user set login_time='$logintime',login_ip='$ip',login_counts='$counts'");
        if ($rs) {
            echo '1';exit;
            $arr['success'] = 1;
            $arr['msg'] = '登录成功!';
            $arr['email'] = $_SESSION['email'];
            $arr['login_time'] = date('Y-m-d H:i:s',$_SESSION['login_time']);
            $arr['login_counts'] = $_SESSION['login_counts'];
        } else {
            $arr['success'] = 0;
            $arr['msg'] = '登录失败';
        }
    } else {
        $arr['success'] = 0;
        $arr['msg'] = '用户名或密码错误!';
    }
    echo json_encode($arr);
}
elseif ($action == 'logout') {  //退出
    unset($_SESSION);
    session_destroy();
    echo '1';
}
"
js

"
// JavaScript Document
$(function(){
    $("#email").focus();
    $("input:text,textarea,input:password").focus(function() {
        $(this).addClass("cur_select");
    });
    $("input:text,textarea,input:password").blur(function() {
        $(this).removeClass("cur_select");
    });

    $("#btn-login").bind('click',function(){
        var email = $("#email").val();
        var password = $("#password").val();
        
        if(email==""){
            $(".control-group-email").removeClass('has-success').addClass("has-error");
            $('<p class="help-block-text"></p>').text("邮箱不能为空!").appendTo($('.control-group-email'));
            $("#email").focus();
            return false;
        }else{
            $(".control-group-email").removeClass("has-error").addClass("has-success")
            $('.help-block-text').remove();
            $("#password").focus();
        }
        if(password==""){
            $(".control-group-password").removeClass("has-success").addClass("has-error");
            $('<p class="help-block-text"></p>').text("密码不为空!").appendTo($('.control-group-password'));
            $("#password").focus();
            return false;
        }else{
            $(".control-group-password").removeClass("has-error").addClass("has-success")
            $('.help-block-text').remove();
            $("#btn-login").focus();
        }
        $.ajax({
            type: "POST",
            url: "login.php?action=login",
            dataType: "json",
            data: {"email":email,"password":password},
            beforeSend: function(){
                $('<p id="msg" />').addClass("loading").html("正在登录...").css("color","#999").appendTo('#btn-login').fadeOut(1000
                    );
            },
            success: function(json){
                if(json.success==1){
                    $("#login-form").remove();
                    var p = "<p id='result'><p><strong>"+json.email+"</strong>,恭喜您登录成功!</p><p>您这是第<span>"+json.login_counts+
                    "</span>次登录本站。</p><p>上次登录本站的时间是:<span>"+json.login_time+
                    "</span></p><p><a href='#' id='logout'>【退出】</a></p></p>";
                    $("#login").append($('p'));
                }else{
                    // $("#msg").remove();
                    $('<p id="errmsg" />').html(json.msg).css("color","#999").appendTo('.help-block').fadeOut(2000);
                    return false;
                }
            }
        });
    });
    $("#logout").bind('click',function(){
        $.post("login.php?action=logout",function(msg){
            if(msg==1){
                $("#result").remove();
                var p = '<p id="login-form"><p class="control-group-email"><label class="control-label">邮箱</label> <input type="email" class="form-control" name="email" id="email" placeholder="请输入可用的邮箱地址"/></p><p class="control-group-password"><label class="control-label">密码</label> <input type="password" class="form-control" name="password" id="password" /></p><span id="helpBlock" class="help-block">没有帐号<a href="register.php">点击这里</a></span><button type="button" class="btn btn-default" data-toggle="modal" data-target="#myModal"><span class="fa fa-weibo" aria-hidden="true"></span></button><button type="button" class="btn btn-default" data-toggle="modal" data-target="#myModal"><span class="fa fa-weixin" aria-hidden="true"></span></button><button type="button" class="btn btn-default" data-toggle="modal" data-target="#myModal"><span class="fa fa-qq" aria-hidden="true"></span></button><p class="modal-footer"><button type="button" class="btn btn-default" data-dismiss="modal">关闭</button><button type="submit" class="btn btn-primary" id="btn-login">登录</button></p></p>';
                $("#login").append(p);
            }
        });
    });
});
"
index.php

"
<p id="login">
                                  
<?php
 if(isset($_SESSION['email'])){
?>



<p id="result">
<p><strong><?php echo $_SESSION['email'];?></strong>,恭喜您登录成功!</p>
<p>您这是第<span><?php echo $_SESSION['login_counts'];?></span>次登录本站。</p>
<p>上次登陆本站的时间是:<span><?php echo date('Y-m-d H:i:s',$_SESSION['login_time']);?>
</span></p><p><a href='#' id='logout'>【退出】</a></p>
 </p>



                                  <?php }else{?>

                                  <p id="login-form">
                                    <p class="control-group-email">
                                      <label class="control-label">邮箱</label> 
                                        <input type="email" class="form-control" name="email" id="email" placeholder="请输入可用的邮箱地址"/>
                                    </p>
                                    <p class="control-group-password">
                                      <label class="control-label">密码</label> 
                                        <input type="password" class="form-control" name="password" id="password" />
                                    </p>

                                    <span id="helpBlock" class="help-block">没有帐号<a href="register.php">点击这里</a></span>

                                    <button type="button" class="btn btn-default" data-toggle="modal" data-target="#myModal">
                                        <span class="fa fa-weibo" aria-hidden="true"></span></button>
                                    <button type="button" class="btn btn-default" data-toggle="modal" data-target="#myModal">
                                        <span class="fa fa-weixin" aria-hidden="true"></span></button>
                                    <button type="button" class="btn btn-default" data-toggle="modal" data-target="#myModal">
                                        <span class="fa fa-qq" aria-hidden="true"></span></button>
                             <p class="modal-footer">
                                <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
                                <button type="submit" class="btn btn-primary" id="btn-login">登录</button>
                            </p>
                          <?php } ?>
                        </p>
天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(1)
ringa_lee

代码太破了,数据库连接,逻辑,html,js全面写在一起了。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号