登录页面
登录页面应如下所示,并根据会话工作。如果用户关闭会话,它将擦除会话数据。
登录界面login.php
<?php
ob_start();
session_start();
?>
<?
// error_reporting(E_ALL);
// ini_set("display_errors", 1);
?>
<html lang = "en" >
<head>
<title>cainiaoya.com</title>
<link href = "bootstrap.min.css" rel = "stylesheet">
<style>
body {
padding-top: 40px;
padding-bottom: 40px;
background-color: #ADABAB;
}
.form-signin {
max-width: 330px;
padding: 15px;
margin: 0 auto;
color: #017572;
}
.form-signin .form-signin-heading,
.form-signin .checkbox {
margin-bottom: 10px;
}
.form-signin .checkbox {
font-weight: normal;
}
.form-signin .form-control {
position: relative;
height: auto;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
padding: 10px;
font-size: 16px;
}
.form-signin .form-control:focus {
z-index: 2;
}
.form-signin input[type="email"] {
margin-bottom: -1px;
border-bottom-right-radius: 0;
border-bottom-left-radius: 0;
border-color:#017572;
}
.form-signin input[type="password"] {
margin-bottom: 10px;
border-top-left-radius: 0;
border-top-right-radius: 0;
border-color:#017572;
}
h2{
text-align: center;
color: #017572;
}
</style>
</head>
<body>
<h2>输入用户名和密码</h2>
<div class = "container form-signin">
<?php
$msg = '';
if (isset($_POST['login']) && !empty($_POST['username']) && !empty($_POST['password'])) {
if ($_POST['username'] == 'jc2182' && $_POST['password'] == '123456') {
$_SESSION['valid'] = true;
$_SESSION['timeout'] = time()+ 2400; // 一个小时过期
$_SESSION['username'] = $_POST['username'];
echo '您输入了有效的用户名和密码';
// 两秒后跳转到 welcome.php
header('Refresh: 2; URL = welcome.php');
}else {
$msg = '错误的用户名或密码';
}
}
?>
</div> <!-- /container -->
<div class = "container">
<form class = "form-signin" role = "form" action = "<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>" method = "post">
<h4 class = "form-signin-heading"><?php echo $msg; ?></h4>
<input type = "text" class = "form-control" name = "username" placeholder = "username = jc2182" required autofocus></br>
<input type = "password" class = "form-control" name = "password" placeholder = "password = 123456" required>
<button class = "btn btn-lg btn-primary btn-block" type = "submit" name = "login">登录</button>
</form>
</div>
</body>
</html>
上面的代码加载了一个样式文件bootstrap.min.css,是前端界面框架bootstrap的样式文件,下载地址:
》》》》》》》》
登录成功页面:welcome.php
<html lang = "en" >
<?php
session_start();
if (isset($_SESSION["username"]) && $_SESSION['valid'] == true){ // 登录成功的
echo '欢迎您:::<span style="color: green">'.$_SESSION['username'].'</span><br/>';
?>
点击这里<a href = "logout.php" tite = "退出登录">退出登录.</a>
<?php
}else{ //未经登录直接访问这个页面的
echo '请您先登录<br/>';
// 两秒后跳转到 login.php
header('Refresh: 2; URL = login.php');
}
?>
</html>
退出登录页面:logout.php
<?php
session_start();
unset($_SESSION["username"]);
unset($_SESSION["password"]);
unset($_SESSION['valid']);
echo '您清除了会话';
// 两秒后跳转到 login.php
header('Refresh: 2; URL = login.php');
?>
提示:一般用户信息都保存在数据库,登录的时候回跟数据库的数据校检,还用用PHP进行一些必要的防SQL注入处理。