记录 PHP7留言板开发 后台管理-登录/注销
php7教程栏目介绍如何开发留言板
推荐(免费):php7教程
前言:有段时间没更新了,把剩下的教程写完。还是老样子,上手敲代码。
本步骤主要知识点:
1、超全局变量$_SESSION
应用保存登录状态,注意使用前必须session_start()
2、给普通密码加盐值,加强密码强度
3、注销登录,具体查看logout.php代码
1、模板
html代码
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>留言表单后台登录_科科分享</title> <link rel="stylesheet" href="css/style.css"> </head> <body> <p> <p class="row4 fix"> <p class="wp"> <p class="tit-i"> <h3>留言表单后台登录</h3> <h5><span>FEEDBACK</span></h5> </p> <p class="login-r"> <form action="php/login.php" class="login-form" method="post"> <p class=""> <input type="text" class="inp l" name="login_name" placeholder="登录账号"> <input type="text" class="inp r" name="password" placeholder="登录密码"> </p> <input type="submit" value="登录" class="sub"> </form> </p> </p> </p> </p> </body> </html>
css代码
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; margin: 0; padding: 0; } *:before, *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } h1, h2, h3, h3, h4, h5, h6 { font-weight: normal; } body { font-family:"微软雅黑", "Microsoft Yahei"; } .wp { width: 100%; max-width: 1170px; margin: 0 auto; } a { color: #333; } a:hover { color: #e4392a; } #hd { /*height: 101px;*/ height: 90px; background: #fff; box-shadow: 0px 2px 2px rgba(0, 0, 0, .3); position: fixed; width: 100%; left: 0; top: 0; z-index:9999; -o-transition:.3s; -ms-transition:.3s; -moz-transition:.3s; -webkit-transition:.3s; transition:.3s; } .tit-i { text-align: center; padding: 50px 0; line-height: 36px; overflow: hidden; } .tit-i h3 { font-size: 30px; color: #002; margin-bottom: 10px; } .tit-i h5 { font-size: 20px; color: #cacace; text-transform: uppercase; font-family: Arial; } .tit-i h5 span { color: #e4392a; } .tit-i em { width: 45px; border-bottom: 1px solid #7f7f90; display: inline-block; } .login-l { width: 38%; float: left; } .login-r { width: 50%; margin: 0 auto; } .login-form .inp { width: 49%; border: 1px solid #6d6d88; height: 33px; padding: 0 10px; margin-bottom: 15px; } .login-form textarea { width: 100%; border: 1px solid #6d6d88; height: 98px; margin-bottom: 24px; } .login-form .sub { width: 100%; height: 40px; line-height: 40px; text-align: center; color: #fff; background-color: #63637f; border: 0; cursor: pointer; font-family:"微软雅黑", "Microsoft Yahei"; font-size: 16px; } .list ul{ padding: 20px 0; width: 50%; margin: 0 auto; } .list .tit-i{ padding: 50px 0 10px 0; } .list ul li{line-height: 1.8em;color: #666;}
2、数据操作
-- -- 表的结构 `admin` -- CREATE TABLE `admin` ( `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, `login_name` varchar(128) NOT NULL COMMENT '登录账号', `password` varchar(64) NOT NULL COMMENT '登录密码', `salt` char(4) NOT NULL COMMENT '盐值,加强密码强度', `addtime` int(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT '记录时间', PRIMARY KEY (`id`), KEY `login_name` (`login_name`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='管理员数据表';
login.php
<?php include 'config.php'; $login_name = !empty($_POST['login_name'])? addslashes(strip_tags($_POST['login_name'])):''; $password = !empty($_POST['password'])?addslashes(strip_tags($_POST['password'])):''; // 简单验证一下提交的数据 if (empty($login_name) || empty($password)) { exit('请输入登录信息!'); } $sql = "SELECT * FROM admin WHERE `login_name` = '{$login_name}' LIMIT 1"; $result = mysqli_query($mysqli, $sql); $row = mysqli_fetch_array($result); if (empty($row)) { exit('账号密码错误!'); } $res_password = $row['password']; $password = md5(md5($password) . $row['salt']); // 密码不匹配 if ($res_password != $password) { exit('账号密码错误!'); // 为了程序的安全,这里不必具体提示密码错误,告知用户账号或密码错误即可。 } // 登录成功,保存登录信息,一般都用session进行处理 session_start(); $_SESSION['login_admin_id'] = $row['id']; $_SESSION['login_admin_name'] = $row['login_name']; echo "<script type='text/javascript'>alert('登录成功');setTimeout(function(){location.href='/login_ok.php'}, 500)</script>";
login_ok.php
<?php session_start(); include 'php/config.php'; ?> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>留言表单后台登录_科科分享</title> <link rel="stylesheet" href="css/style.css"> </head> <body> <p> <p class="row4 fix"> <p class="wp"> <p class="tit-i"> 您好,<?php echo $_SESSION['login_admin_name']?>,<a href="">退出</a>。 </p> <p class="tit-i"> <h3>您已登录后台中心!</h3> </p> </p> </p> </p> </body> </html>
<?php session_start(); unset($_SESSION['login_admin_id']); unset($_SESSION['login_admin_name']); session_destroy(); echo "<script type='text/javascript'>alert('注销登录成功');setTimeout(function(){location.href='/login.html'}, 500)</script>";
3、测试
养成好习惯,简单测试一遍,再提交工作。
登录页面
登录成功后的页面
4、总结
这节知识点就一个session,抓住用法,你离高大上的云后台不远了。
切记多动手敲代码,一味复制粘贴达不到学习效果的~
相关免费学习推荐:php编程(视频)
以上是记录 PHP7留言板开发 后台管理-登录/注销的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

php7.0安装mongo扩展的方法:1、创建mongodb用户组和用户;2、下载mongodb源码包,并将源码包放到“/usr/local/src/”目录下;3、进入“src/”目录;4、解压源码包;5、创建mongodb文件目录;6、将文件复制到“mongodb/”目录;7、创建mongodb配置文件并修改配置即可。

在php5中,我们可以使用fsockopen()函数来检测TCP端口。这个函数可以用来打开一个网络连接和进行一些网络通信。但是在php7中,fsockopen()函数可能会遇到一些问题,例如无法打开端口、无法连接到服务器等。为了解决这个问题,我们可以使用socket_create()函数和socket_connect()函数来检测TCP端口。

解决 PHP 7.0 中插件未显示已安装问题的方法:检查插件配置并启用插件。重新启动 PHP 以应用配置更改。检查插件文件权限,确保其正确。安装丢失的依赖项,以确保插件正常运行。如果其他步骤均失败,则重建 PHP。其他可能原因包括插件版本不兼容、加载错误版本或 PHP 配置问题。

PHP服务器环境常见的解决方法包括:确保已安装正确的PHP版本和已复制相关文件到模块目录。临时或永久禁用SELinux。检查并配置PHP.ini,确保已添加必要的扩展和进行正确设置。启动或重启PHP-FPM服务。检查DNS设置是否存在解析问题。

php7.0安装部署的方法:1、到PHP官网下载与本机系统对应的安装版本;2、将下载的zip文件解压到指定目录;3、打开命令行窗口,在“E:\php7”目录下运行“php -v”命令即可。

如何在系统重启后自动设置unixsocket的权限每次系统重启后,我们都需要执行以下命令来修改unixsocket的权限:sudo...

在Docker环境中使用PECL安装扩展时报错的原因及解决方法在使用Docker环境时,我们常常会遇到一些令人头疼的问�...

PHP8相较于PHP7在性能、新特性和语法改进、类型系统、错误处理和扩展等方面都有一些优势和改进。然而,选择使用哪个版本要根据具体的需求和项目情况来决定。详细介绍:1、性能提升,PHP8引入了Just-in-Time(JIT)编译器,可以提高代码的执行速度;2、新特性和语法改进,PHP8支持命名参数和可选参数的声明,使得函数调用更加灵活;引入了匿名类、属性的类型声明等等。
