PHP多用户记账程序V1.1源码分享
提问须知
1、鉴于很多人提问的时候,不提供任何信息,完全就是要等我去猜,这种问题,我一概无视。
2、以后有新需求的,会统一修改,不再临时修改,影响系统使用的BUG除外。
20190127说明
1、增加账户管理功能,自动对账户的金额进行加减,如果合理记账,通过该系统对资金剩余、流向是一目了然的
2、增加在线修改系统配置(网站名称、网址、是否多用户开关)的功能
3、修复IOS下的分类页面弹窗的BUG
20190124说明
1、目前发布的版本是1月24日,修复部分PHP版本对加密文件的识别有问题,尤其是PHP7
2、增加管理员功能(仅支持安装时第一个用户是管理员,后续注册的都是非管理员)
3、管理员可以查看到所注册的用户,可以禁用其他用户(被禁用的用户不能登录,但数据不受影响)
4、增加是否开启多用户的选项(见data/config.php)文件,默认为关闭,开启之后可以注册帐号,若原来开启,后来再关闭,则已经注册的帐号可以登录不受影响
5、修改MYSQL的引擎为InnoDB,通过查阅资料,InnoDB引擎的更有优越性
6、增加判断支持PHP7的加密方式,主要是登录后用户信息的加密(避免再次查库)
重要说明
由于源码中有一个加密文件,该文件需要使用二进制的模式进行上传,否则文件识别不了,可能会白屏。
目前已发现FlashFXP工具对一些Linux服务器上传会有问题,建议使用FileZilla。
源码介绍
昨天将体验地址分享出来,之后也做了很多调整,今天上午又进行BUG修复。主要涉及几个方面:
1、修复导入和导出的问题,之前缺少对备注的判断;
2、导入的时候多次查询数据库的问题已经改掉;
3、优化SMTP发信,之前不知道为什么要引入两个文件,这次换成一个类就完成;
4、优化找回密码界面的代码,找回密码发信时,直接调用一个function即可,之前代码写在login_chk.php界面很难看;
5、进一步规范date.php页面的参数判断,使用统一的判断方式,后续升级更方便;
6、将/inc/content.php做了一些加密,公开的版本这个文件做了加密,不喜勿用;
7、将源码发布到Github
下一步动作
1、继续修复里面的BUG
2、优化代码结构
3、考虑将数据库表名进行修改,目前的表名,不是我喜欢的那种命名方式
4、看看有什么特色功能可以加进去
源码地址
转载本站原创文章请注明:文章转自 挨踢路,链接: https://888929.tm7j5.group/articles/2550.html
怎样修改都提示,导入错误,能否提供个csv模板
抱歉,现在提供不了给你。假期结束后才可以
请问现在可以吗
前几天已经修复该问题,更新相关文件即可。
好的 谢谢
密码找回输入邮箱后,提示邮箱设置错误
最新版需要在个人信息页设置smtp
设置了,也不行‘’
楼主好!我装了,访问users.php 显示网页无法访问。是什么情况呀
请提供更多信息,目前无法判断
HTTP ERROR 500错误
要么你将PHP版本告诉我,要么给个地址我让我自己看。就一个500错误,怎么知道错误呢??
版本5.6.14 - MySQL Community Server (GPL)
已正常,是PHP版本低了。
希望能支持配置SSL的smtp
可以增加
已经能支持SSL,2.0的版本已经支持
多谢,多谢。
还有能否增加sqlite版本的呢,记账用mysql数据库感觉有点重量级了
可以有
多谢,多谢。
已经有SQLite版本,见github的分支
为什么分类会显示???
????看数据库是否乱码,若乱码就是数据库问题
谢谢狼哥,数据库是否乱码怎么看啊,请问这个怎么创建其他用户,我需要一个记账系统,可以创建多个用户,管理员跟其他用户可以使用不同账号登录系统,但权限不一样。每个用户只能看到自己记录的账目,管理员可以看到所有账目。
数据库不知怎么看的话,有点难度。可以多账户,管理员就是默认第一个,其他注册都是非管理员。管理员只可以看到其他的账号,看不到记账数据。
我的网站是,www.jizhang.online,没有注册按钮
文章开头的内容你没看?有开关的好吧
安装完之后,进入账本,默认分类两项:默认支出、默认收入;均显示乱码,但是进入数据库查看,显示正常,数据库编码也是utf,但是不知为何前台显示是乱码呢?
本地调试环境,Windows+phpstudy,测试安装后,编辑分类这块,无法保存中文,显示均为乱码,请核查下
测试不出来这种情况。。。不过看了下,是可以加上那一句代码的
乱码问题解决了:function.php 文件,修改第7行,if(!$conn){die('数据库打开失败!');}else{
//数据库增加中文录入。by goodboy 2019-4-8 周一
mysqli_select_db($conn,DB_NAME);
mysqli_query($conn,'SET NAMES utf8');
}。
原来作者的版本,没有这问题,这个版本把进数据库的数据编码给删掉了。
大赞啊,来个汇总统计功能吧,没有统计实在看起来太累。比如个人余额汇总在页面的侧栏,看起来多爽
建议:根据每个账户汇总余额,然后再来一个总的余额显示,参考随手记的记账模式;2,建议把“默认账户”增加进账户管理里,可以修改默认账户的名字,方便后期参与统计
默认账户是为了部分人不想使用账户功能而设计的一个东西,这个默认的不涉及账户中的金额变化,其他账户需要做金额处理的。
如果是初始化余额是正确的,通过账户之间的收入和支出,总余额是会保存准确的(有其他未记录的来源除外)
正常安装了,但是到了登陆页面输入错误的账号密码显示密码错误。输入正确的账号密码,点登陆完全没反应,也不跳转到其他页面,也没任何提示。我用的PHP7.0+apache+mysql。求解。
登录页面,浏览器F12看登录时返回什么
好像这里提示有错误。难道是我环境版本问题?
"
Fatal error: Uncaught Error: Call to undefined function openssl_encrypt() in E:\www\jizhang\inc\aes7.php:7
Stack trace:
#0 E:\www\jizhang\login_chk.php(27): AES::encrypt('a:6:{s:6:"useri...', 'itluorgg87y65ki...')
#1 {main}
thrown in E:\www\jizhang\inc\aes7.php on line 7
"
openssl_encrypt()函数未定义。会不会是我某个扩展插件未开启?
是的,cookies加密需要
但是又出现新问题。
今晚我在MACos上安装运行环境后。安装网站程序,提示数据库连接出错。密码账号等都没问题。
问题找到了.连接不上数据库是因为之前安装MySQL的时候选择了新的密码验证方式,导致登陆数据库验证通不过.在安装新版SQL的时候记得要选择兼容验证模式.这个送给和我一样的新手,希望大家少走弯路.
另外,向无私分享源码以供大家学习使用的楼主和老郑致敬.
已经找到问题。php.ini中,extension=php_openssl.dll 插件未开启。
去掉注释符,重启apache以后恢复正常。
谢谢提醒
然后我又去群晖上新建一个运行环境,安装过程中同样提示数据库连接有问题。明天我再继续找答案。
测试程序很好用,简洁实用,喜欢,点赞。never.money
喜欢就好
安装时提示openssl()不支持
那就自己修改环境,不支持的话,在登录的时候会登录不了。登录信息加密需要用到。
如果能添加上传附件的功能就更加完美了,就是每条记账明细允许上传一个文件,并允许后续删除或修改附件,防止上传错了,不知道后期会不会加上呢,期待!
一条记账记录的附件是哪些呢?感觉增加记账麻烦
以后会增加附件功能吗
短期内应该不会增加,但可以考虑使用备注的功能,有时间再想想
附件作为可选,不是必须。比如记账一笔,但是包含多个费用,可能对应一张明细单、一张收据、一个excel文件等。假设这次记账1万,包含很多东西的采购,把这些东西单独列出来更麻烦,不现实,,直接把单据上传,就更好