批改状态:未批改
老师批语:
<?php
//判断用户是否已经登录
if( isset($_COOKIE['username']) && $_COOKIE['username'] === 'hms'){
echo '<script>alert("你已经登录,请不要重复登录!");location.href="admin.php";</script>';
}
?>
<!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>
// 非空验证
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
//防止重复登录的检查
if( isset($_COOKIE['username']) && $_COOKIE['username'] === 'hms'){
echo '<script>alert("已经登录,请不要重复登录");location.href="admin.php";</script>';
}
//连接数据库
require __DIR__.'/public/include/connect.php';
$email = $_POST['email'];
$password = sha1($_POST['password']);
//到用户user表中进行验证
$sql = 'SELECT * FROM `userInfo` WHERE `email` = :email AND `password` = :password LIMIT 1';
// $sql = 'SELECT * FROM `userInfo` WHERE `email` = :email LIMIT 1';
// 创建语句对象,预处理对象
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':email',$email,PDO::PARAM_STR);
$stmt->bindParam(':password',$password,PDO::PARAM_STR);
$stmt->execute();
//fetch()成功返回数组,失败返回false
$user = $stmt->fetch(PDO::FETCH_ASSOC);
if($user === false){
echo '<script>alert("登录失败,请检查");history.back();</script>';
die; // 中断当前脚本
}
//登录成功
setcookie('username',$user['username']);
echo '<script>alert("登录成功");location.assign("admin.php");</script>';
-------------------------------------------------------------------------
<?php
//判断用户是否已经登录
if( isset($_COOKIE['username']) && $_COOKIE['username'] === 'hms'):
?>
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>后台管理</title>
</head>
<body>
<h3>后台管理</h3>
<p>
欢迎:<?php echo $_COOKIE['username'];?>
</p>
<p>
<a href="logout.php">
退出:<?php echo $_COOKIE['username'];?>
</a>
</p>
</body>
</html>
<?php else: ?>
echo '<script>alert("请先登录");location.href="login.php";</script>';
<?php endif; ?>
----------------------------------------------------------------------------
<?php
//必须已经登录才允许退出
if( isset($_COOKIE['username']) && $_COOKIE['username'] === 'hms'){
setcookie('username',null,time()-3600);
echo '<script>alert("退出成功");location.href="login.php";</script>';
} else {
echo '<script>alert("请先登录");location.href="login.php";</script>';
}
session
----------------------------------------------------------------------------
<?php
session_start();
//判断用户是否已经登录
if( isset($_SESSION['username']) && $_SESSION['username'] === 'hms'){
echo '<script>alert("你已经登录,请不要重复登录!");location.href="admin.php";</script>';
}
?>
<!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>
// 非空验证
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
session_start();
//防止重复登录的检查
if( isset($_SESSION['username']) && $_SESSION['username'] === 'hms'){
echo '<script>alert("已经登录,请不要重复登录");location.href="admin.php";</script>';
}
//连接数据库
require __DIR__.'/public/include/connect.php';
$email = $_POST['email'];
$password = sha1($_POST['password']);
//到用户user表中进行验证
$sql = 'SELECT * FROM `userInfo` WHERE `email` = :email AND `password` = :password LIMIT 1';
// $sql = 'SELECT * FROM `userInfo` WHERE `email` = :email LIMIT 1';
// 创建语句对象,预处理对象
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':email',$email,PDO::PARAM_STR);
$stmt->bindParam(':password',$password,PDO::PARAM_STR);
$stmt->execute();
//fetch()成功返回数组,失败返回false
$user = $stmt->fetch(PDO::FETCH_ASSOC);
if($user === false){
echo '<script>alert("登录失败,请检查");history.back();</script>';
die; // 中断当前脚本
}
//登录成功
//setcookie('username',$user['username']);
$_SESSION['username'] = $user['username'];
echo '<script>alert("登录成功");location.assign("admin.php");</script>';
-----------------------------------------------------------------------------
<?php
session_start();
//判断用户是否已经登录
if( isset($_SESSION['username']) && $_SESSION['username'] === 'hms'):
?>
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>后台管理</title>
</head>
<body>
<h3>后台管理</h3>
<p>
欢迎:<?php echo $_SESSION['username'];?>
</p>
<p>
<a href="logout.php">
退出:<?php echo $_SESSION['username'];?>
</a>
</p>
</body>
</html>
<?php else: ?>
echo '<script>alert("请先登录");location.href="login.php";</script>';
<?php endif; ?>
-----------------------------------------------------------------------------
<?php
session_start();
//必须已经登录才允许退出
if( isset($_SESSION['username']) && $_SESSION['username'] === 'hms'){
// setcookie('username',null,time()-3600);
session_destroy();
echo '<script>alert("退出成功");location.href="login.php";</script>';
}点击 "运行实例" 按钮查看在线实例
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号