当前位置: 首页 > news >正文

快速排名网站系统哈尔滨大型网站建设

快速排名网站系统,哈尔滨大型网站建设,杭州网论坛,南溪区网站建设该文档详细描述了实现一个简单的密码管理工具的过程#xff0c;工具基于PHP和MySQL构建#xff0c;支持用户注册、密码存储、管理以及角色权限控制等核心功能。 系统架构设计 技术栈#xff1a;PHP#xff08;后端逻辑#xff09;、MySQL#xff08;数据存储#xff09…该文档详细描述了实现一个简单的密码管理工具的过程工具基于PHP和MySQL构建支持用户注册、密码存储、管理以及角色权限控制等核心功能。 系统架构设计 技术栈PHP后端逻辑、MySQL数据存储、Bootstrap前端样式数据存储用户表(users)和密码表(passwords)存储用户的基本信息和其管理的密码信息包含外键关联实现级联删除。权限控制通过session会话管理用户角色确保不同角色的访问权限。 数据库配置和安装流程 1. 数据库配置 为了便于初次安装用户配置数据库信息工具提供了安装页面(install.php)来接收并初始化数据库参数和管理员账户。 ?php if ($_SERVER[REQUEST_METHOD] POST) {$db_host $_POST[db_host];$db_user $_POST[db_user];$db_pass $_POST[db_pass];$db_name $_POST[db_name];// 连接数据库并创建数据库$conn new mysqli($db_host, $db_user, $db_pass);if ($conn-connect_error) {die(连接失败: . $conn-connect_error);}$conn-query(CREATE DATABASE IF NOT EXISTS $db_name);$conn-select_db($db_name);// 创建用户和密码表$sql_users CREATE TABLE IF NOT EXISTS users (id INT AUTO_INCREMENT PRIMARY KEY,username VARCHAR(50) NOT NULL,password VARCHAR(255) NOT NULL,role ENUM(admin, user) DEFAULT user);$sql_passwords CREATE TABLE IF NOT EXISTS passwords (id INT AUTO_INCREMENT PRIMARY KEY,user_id INT,platform_name VARCHAR(100),platform_address VARCHAR(255),account VARCHAR(100),password VARCHAR(255),FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE);$conn-query($sql_users);$conn-query($sql_passwords);// 创建管理员账户$admin_username $_POST[admin_username];$admin_password password_hash($_POST[admin_password], PASSWORD_BCRYPT);$conn-query(INSERT INTO users (username, password, role) VALUES ($admin_username, $admin_password, admin));// 将数据库配置写入文件$config_content ?php\n. \$db_host $db_host;\n. \$db_user $db_user;\n. \$db_pass $db_pass;\n. \$db_name $db_name;\n. \$conn new mysqli(\$db_host, \$db_user, \$db_pass, \$db_name);\n. if (\$conn-connect_error) {\n. die(\连接失败: \ . \$conn-connect_error);\n. }\n;file_put_contents(config.php, $config_content);echo div classalert alert-success安装成功/div; } ? 在 install.php 文件中定义了数据库连接及初始化代码接受表单输入并写入配置文件 config.php用于后续的数据库访问。 用户身份验证与会话管理 用户登录和权限管理通过session实现。登录页面login.php验证用户身份并开启会话将用户ID和角色写入会话变量以便后续操作中使用。 用户登录 (login.php) ?php session_start(); include db.php;if ($_SERVER[REQUEST_METHOD] POST) {$username $_POST[username];$password $_POST[password];$result $conn-query(SELECT * FROM users WHERE username$username);if ($result-num_rows 0) {$user $result-fetch_assoc();if (password_verify($password, $user[password])) {$_SESSION[user_id] $user[id];$_SESSION[role] $user[role];header(Location: dashboard.php);exit;}}echo div classalert alert-danger用户名或密码错误/div; } ? 登录验证流程 获取用户输入的用户名和密码。使用SELECT语句查询用户信息并验证密码(password_verify)。验证成功后写入会话($_SESSION[user_id]和$_SESSION[role])并跳转至主页面。 管理员页面和用户管理 管理员页面(admin.php)提供用户的增删改功能管理员角色控制通过会话变量实现。此页面仅限roleadmin的用户访问。 用户管理 (admin.php) ?php session_start(); include db.php;if (!isset($_SESSION[user_id]) || $_SESSION[role] ! admin) {header(Location: login.php);exit; }// 添加用户 if ($_SERVER[REQUEST_METHOD] POST isset($_POST[action]) $_POST[action] add) {$username $_POST[username];$password password_hash($_POST[password], PASSWORD_BCRYPT);$role $_POST[role];$conn-query(INSERT INTO users (username, password, role) VALUES ($username, $password, $role)); }// 删除用户 if ($_SERVER[REQUEST_METHOD] POST isset($_POST[action]) $_POST[action] delete) {$userId intval($_POST[user_id]);$result $conn-query(SELECT role FROM users WHERE id$userId);$user $result-fetch_assoc();if ($user $user[role] ! admin) {$conn-query(DELETE FROM users WHERE id$userId);} } ? 管理员页面支持 添加用户从表单获取用户名、密码、角色信息进行哈希加密存储。删除用户基于用户ID执行删除操作仅允许删除非管理员用户。 密码管理 主页面(dashboard.php)实现用户的密码管理功能包括密码的添加、删除、修改和搜索等操作。每个密码条目包含平台名称、平台地址、账号和密码。 添加密码 用户通过表单提交密码条目包括平台名称、地址、账号和密码数据存储在 passwords 表中。 if ($_SERVER[REQUEST_METHOD] POST isset($_POST[add_password])) {$platform_name $_POST[platform_name];$platform_address $_POST[platform_address];$account $_POST[account];$password $_POST[password];$conn-query(INSERT INTO passwords (user_id, platform_name, platform_address, account, password) VALUES ($user_id, $platform_name, $platform_address, $account, $password)); } 删除密码 if (isset($_GET[delete_id])) {$delete_id $_GET[delete_id];$conn-query(DELETE FROM passwords WHERE id$delete_id AND user_id$user_id);header(Location: dashboard.php);exit; } 编辑密码 if (isset($_POST[edit_password])) {$id $_POST[id];$platform_name $_POST[platform_name];$platform_address $_POST[platform_address];$account $_POST[account];$password $_POST[password];$conn-query(UPDATE passwords SET platform_name$platform_name, platform_address$platform_address, account$account, password$password WHERE id$id AND user_id$user_id);header(Location: dashboard.php);exit; } 通过模态框提供编辑密码功能用户可以修改已有条目数据并提交更改。 安全性措施 密码加密使用password_hash和password_verify函数确保用户密码安全存储和验证。SQL注入防范用户输入通过适当的数据类型转换避免直接拼接字符串进行查询提升安全性。权限控制基于会话的角色验证确保管理员操作权限阻止普通用户访问管理页面。 结论 通过上述模块的构建实现了一个功能完备的密码管理工具。系统设计中充分考虑了数据安全和用户权限控制满足基础的密码管理需求。 项目地址GitHub - C4rpeDime/Passwordstorage: 这是一个简易的密码管理器帮助你安全地存储和管理你的各种在线账号的登录信息。 使用此工具你可以轻松添加、编辑和删除账号信息确保所有重要的密码都有条不紊地管理。
http://www.w-s-a.com/news/715470/

相关文章:

  • 诚信网站备案中心网站字体怎么设置
  • 企业网站建设费是无形资产吗佛山网站建设哪个好点
  • 网站建设就业方向国开行网站毕业申请怎么做
  • 创建一个网站的费用wordpress 4.0 安装
  • 会员登录系统网站建设dw软件是做什么用的
  • 手机网站被做跳转长沙网上购物超市
  • 网站建设中网站需求分析设计网站推荐html代码
  • 容易收录的网站台州汇客网站建设
  • 企业网站源码百度网盘下载网站备案号如何查询密码
  • 个人网站建设课程宣传栏制作效果图
  • 自己做的网站能上传吗网上做彩票网站排名
  • 教育培训网站模板下载自己做商务网站有什么利弊
  • 平面设计公司网站兰州室内设计公司排名
  • 个人工作室注册条件温州seo结算
  • 360免费建站系统中国建设银行官网站黄金部王毅
  • 罗源福州网站建设个体户可以网站备案吗
  • 网站开发 专有名词pc网站建设和推广
  • 上海部道网站 建设conoha wordpress
  • 手机测评做视频网站宝塔可以做二级域名网站么
  • 代理公司注册济南重庆seo优化效果好
  • 佛山市骏域网站建设专家徐州网站建设价格
  • 公司做网站多济南好的网站建设公司排名
  • 网站维护的方式有哪几种该网站在工信部的icp ip地址
  • 中小企业服务中心网站建设做考勤的网站
  • 大连网站建设报价wordpress实用功能
  • 学校网站建设自查报告电脑网站制作教程
  • 适合推广的网站世界搜索引擎公司排名
  • 合肥网站建设费用ppt在哪个软件制作
  • 湖南省住房和城乡建设厅门户网站网站建设课程性质
  • 如何设计公司网站公司网站空间要多大