TY记账系统-简单易用-界面清晰

TY记账系统-简单易用-界面清晰-青狐资源网
TY记账系统-简单易用-界面清晰
此内容为付费资源,请付费后查看
会员专属资源
您暂无购买权限,请先开通会员
付费资源
已售 36

视频解说及搭建教程:


个人记账系统功能详解|PHP 开源消费记账管理系统|开发工程师视角

个人记账系统功能详解|PHP 开源消费记账管理系统

技术栈:PHP 8 + MySQL + 原生 HTML/CSS/JS + PWA | 关键词:个人记账系统、消费记账、多用户记账源码

这套系统适合拿来做什么?

  • 个人/家庭日常消费记账:开箱即用的”记一笔 + 月度汇总 + 预算预警”闭环,适合想快速记录收支并看清钱花在哪的人。
  • 小型团队/社群共用记账平台:多用户数据隔离 + 邀请码注册 + 后台封禁,可作为班级、宿舍、兴趣小组的共享记账站。
  • 二次开发练手项目:单入口 API、PDO 预处理、Token 鉴权、PWA 离线、原生 SMTP,结构清晰无框架依赖,是 PHP 全栈入门到进阶的优质脚手架。
  • 对外提供轻量 SaaS 演示:支持游客模式、站点品牌定制(Logo/ICP/站名)、邮件通知,可快速挂载到自有域名对外演示。
  • 财务数据自托管:数据存自家 MySQL,不依赖第三方云服务,满足对隐私敏感用户的”记账数据不出本地服务器”诉求。

本文从开发工程师视角,结合源码结构与线上实测,系统拆解这套消费记账管理系统的整体架构、功能模块、核心业务流程与关键工程特性,帮助客户快速评估其业务价值与可维护性。

一、系统架构概述

系统采用经典的三层架构,零前端框架依赖、零构建步骤,PHP + MySQL 环境即可部署。表现层为原生 HTML/CSS/JS 并通过 Service Worker 实现离线缓存;业务层以 api.php 为单入口路由,按 ?action=xxx 分发,公共函数集中在 config.php;数据层基于 MySQL 8(utf8mb4),通过 PDO 预处理语句与数据库交互。

个人记账系统三层架构图:表现层 PWA、业务层 PHP 单入口 API、数据层 MySQL
图1 · 系统三层架构:表现层 PWA / 业务层 PHP 单入口 / 数据层 MySQL
20+PHP 接口动作
13数据表
2角色(admin/user)
0前端框架依赖

二、功能模块全景

系统功能分为用户前端管理后台两大簇。前端面向记账人,提供录入、统计、个人设置等闭环能力;后台面向运营者,提供用户治理、站点配置、反馈处理等运营能力。两侧通过同一套 Token 鉴权体系打通。

记账系统功能模块全景图:前端记账统计分类预算主题与后台用户配置邮件反馈管理
图2 · 功能模块全景:左侧用户前端,右侧管理后台

三、核心业务流程:从记一笔到数据洞察

记账系统的核心价值在于”低摩擦录入 → 可靠存储 → 即时洞察”。本系统在该主链路上做了完整的工程化封装:前端金额快选(¥10/50/100)降低输入成本,api.php?action=addstrip_tags 净化与 PDO 绑定入库,再由聚合 SQL 产出日/月/分类统计,最终在前端以 SVG 饼图、柱状图、日历热力图可视化,并与用户预算阈值比对触发超支预警。

记账核心业务流程图:录入校验入库聚合统计可视化预算预警
图3 · 核心业务流程:录入 → 校验入库 → 聚合统计 → 可视化 → 预算预警

3.1 快速记账与收支双向

首页表单同时支持”消费”与”收入”两种类型,金额、分类、支付方式、备注一次填完提交。删除采用软删机制:记录先镜像写入 deleted_expenses 表,后台可在 30 天内按用户恢复,避免误删数据丢失。

3.2 统计分析与可视化

chart.php 提供分类占比饼图与月度趋势柱状图,calendar.php 提供日历视图按日汇总。所有图表均为前端 SVG 自绘,无 ECharts/Chart.js 等第三方库依赖,渲染轻量且可随主题变色。

四、用户体系与访问控制

系统内置 adminuser 双角色,鉴权基于服务端 Token + 客户端双存储。登录成功后 genToken() 生成 64 位随机 token 写入 users.token 字段,前端同时写入 localStorage 与 Cookie。每次 API 请求由 authUser() 查表校验,管理接口额外经 requireAdmin() 拦截。封禁(banned_until)与强制下线(清 token)均可即时生效。

Token 鉴权与多角色访问控制流程图
图4 · Token 鉴权与多角色访问控制

4.1 注册与邀请码

支持开放注册、邮箱验证码注册、邀请码注册三种模式,由后台开关位动态控制。邀请码可设置使用次数与过期天数,批量生成并支持 CSV 导出,适合社群场景的准入控制。

4.2 账号安全与邮箱绑定

个人中心提供改密、登录日志查看、邮箱绑定/换绑/解绑(带图片验证码 + 邮箱验证码双重校验)。忘记密码通过邮件下发重置链接,30 分钟内有效。

五、后台运营管理能力

管理后台(admin.php)以侧边栏 + Tab 切换组织,覆盖用户全生命周期治理、站点动态配置、邮件通知、反馈闭环、邀请码管理与数据安全六大运营场景,是这套系统区别于”单机记账 App”的核心增量价值。

后台运营管理能力图:用户治理站点配置邮件反馈邀请码数据安全
图5 · 后台运营管理能力六大场景

5.1 用户全生命周期管理

管理员可添加/编辑用户、改密、封禁(1/3/7/30 天或永久,附理由)、强制下线、查看单用户统计与登录日志(IP/UA/时间),并对该用户已删除记录做定向恢复。

5.2 站点动态配置

所有开关位(注册、游客、邀请码、邮箱绑定、反馈、公告)与品牌信息(站名、Logo、Favicon、ICP、描述)均存于 admin_config 键值表,后台修改即时生效,无需改代码或重启。

5.3 邮件与通知

原生实现 SMTP 客户端(fsockopen + AUTH LOGIN),无需 PHPMailer 依赖。后台可配置 SMTP 并发送测试邮件,系统据此下发验证码、重置链接与反馈回复通知。

六、核心数据模型

数据层围绕 usersexpensescategories 三张主表组织,辅以 admin_config(站点配置)、feedback(反馈)、deleted_expenses(软删镜像)等表。所有业务表均以 user_id 做数据隔离,expensescreated_at 建索引保障统计查询性能。

核心数据模型 ER 图:users expenses categories admin_config feedback deleted_expenses
图6 · 核心数据模型 ER 概览

七、关键工程特性

从工程角度,这套系统在”轻量”与”完备”之间取得了较好平衡,以下特性使其具备生产可部署性:

关键工程特性图:PWA 双主题 多用户隔离 安全 零依赖 单入口 软删审计
图7 · 关键工程特性
  • PWA 离线:manifest + Service Worker,可安装到手机桌面,离线缓存页面资源。
  • 双主题:浅色/深色/跟随系统,基于 CSS 变量实现,后台可全局锁定主题。
  • 多用户数据隔离:分类、预算、记账均按 user_id 隔离,互不串扰。
  • 安全基线:bcrypt 密码哈希、PDO 预处理防注入、64 位随机 token、封禁/强制下线即时生效。
  • 零依赖部署:无需 Composer / Node 构建,上传源码 + 访问 install.php 向导即可完成安装。
  • 软删 + 审计deleted_expenses 镜像表支持 30 天恢复,login_logs 留存 IP/UA 痕迹。

八、部署与技术栈速览

运行环境:PHP ≥ 7.0(推荐 8.x)+ MySQL + PDO/openssl/mbstring/GD 扩展

安装方式:上传源码 → 浏览器访问 install.php → 填数据库信息 → 自动建表 + 创建 admin 账号

默认管理员admin / admin(首次登录后请立即修改)

前端入口index.php 后台入口admin.php 接口入口api.php

结语

这套个人记账系统以”零框架依赖 + 单入口 API + 多用户隔离”为骨架,在记账核心闭环之上叠加了完整的后台运营能力(用户治理、站点配置、邮件通知、反馈闭环、邀请码、数据恢复),既可作为个人/家庭的日常记账工具直接使用,也因其清晰的代码结构成为 PHP 全栈二次开发的优质起点。对追求”数据自托管 + 功能可运营”的客户而言,是一套兼顾实用性与可维护性的消费记账管理系统源码方案。

轮播展示图:

© 版权声明
THE END
喜欢就支持一下吧
点赞475 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容