登录  /  注册
博主信息
博文 61
粉丝 1
评论 0
访问量 67650
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
0610-简易数据库调用登陆页面
我的博客
原创
761人浏览过

实例   login.php -表单登陆首页

<?php 
// 防止重复登录
if (isset($_COOKIE['username']) && $_COOKIE['username'] === 'admin') {
    echo '<script>alert("您已经登录,请不要重复登录");location.assign("admin.php");</script>';
    die;
}
?>

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>用户登录</title>
</head>
<body>
<h3>用户登录</h3>
<form action="check.php" method="post" onsubmit="return isEmpty()">
    <p>
        <label for="email">邮箱:</label>
        <input type="email" name="email" id="email">
    </p>

    <p>
        <label for="password">密码:</label>
        <input type="password" name="password" id="password">
    </p>

    <p>
        <button>提交</button>
    </p>
</form>

<script>
    // onsubmit: 表单提交前进行验证, 默认返回true
    // 非空验证函数  isEmpty 判断是否为空 ,isSet()判断是否有值
    function isEmpty() {
        var email = document.getElementById('email').value;
        var password = document.getElementById('password').value;
        if (email.length === 0 || password.length === 0 ) {
            alert('邮箱或密码不能为空');
            return false;
        }
    }

</script>

</body>
</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例

实例

<?php  check.php- 判断用户数据是否正确

// 防止重复登录
if (isset($_COOKIE['username']) && $_COOKIE['username'] === 'admin') {
    echo '<script>alert("您已经登录,请不要重复登录");location.assign("admin.php");</script>';
    die;
}

//print_r($_POST);

// 连接数据库
require __DIR__ . '/inc/connect.php';

$email = $_POST['email'];
$password = sha1($_POST['password']);

// 到用户表user中进行验证
$sql = 'SELECT * FROM `user` WHERE `email` = :email AND `password` = :password';

$stmt = $pdo->prepare($sql);
//把获取到的变量赋值给数据库查询变量进行查询(或者说互相绑定)
$stmt->execute([':email'=>$email,':password'=>$password]);


// fetch(): 成功返回数组,失败返回false
$user = $stmt->fetch(PDO::FETCH_ASSOC);


if ( $user===false) {
    // 登录失败
    echo '<script>alert("登陆失败,请检查");history.back();</script>';
    die;  // 终止当前脚本
}

// 登录成功,将用户信息写入cookie
setcookie('username', $user['username']);
setcookie('password', $user['password']);
echo '<script>alert("登录成功");location.assign("admin.php");</script>';

运行实例 »

点击 "运行实例" 按钮查看在线实例

实例  admin.php 后台页

<?php
// 禁止非授权用户访问
 // 连接数据库

require __DIR__ . '/inc/connect.php';


$sql = 'SELECT * FROM `user` WHERE `username`=:name';
$stmt =$pdo-> prepare($sql);
if(isset($_COOKIE['username'])){
$stmt->execute([':name'=>$_COOKIE['username']]);


$user = $stmt->fetchAll(PDO::FETCH_ASSOC);
}
//echo '<pre>' . print_r($user,true);
if (isset($_COOKIE['username']) && $_COOKIE['username'] === $user[0]['username']):

?>
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>后台首页</title>
</head>
<body>
<h1>后页首页</h1>
<p>欢迎:
<?php echo $_COOKIE['username']; ?>
</p>

<p><a href="logout.php">退出</a></p>
</body>
</html>

<?php else: ?>
    <script>alert("请登录");location.assign('login.php');</script>
    <?php endif; ?>

运行实例 »

点击 "运行实例" 按钮查看在线实例

实例  登出页面

<?php
// 必须在已登录的情况下,才允许退出
if (isset($_COOKIE['username']) && $_COOKIE['username'] === 'admin') {
    setcookie('username', null, time()-3600);
    echo '<script>alert("退出成功");location.href="login.php";</script>';
} else {
    echo '<script>alert("请先登录");location.assign("login.php");</script>';
}

运行实例 »

点击 "运行实例" 按钮查看在线实例


批改状态:未批改

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

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

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学