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

PHP多用户记账程序V1.1源码分享

下一步动作

1、继续修复里面的BUG

2、优化代码结构

3、考虑将数据库表名进行修改,目前的表名,不是我喜欢的那种命名方式

4、看看有什么特色功能可以加进去

源码地址

https://github.com/chenstor/jizhang

查看 php 记账程序的相关文章

转载本站原创文章请注明:文章转自 挨踢路,链接: https://itlu.net/articles/2550.html

评论列表(245条)

  1. 怎样修改都提示,导入错误,能否提供个csv模板

    1. 抱歉,现在提供不了给你。假期结束后才可以

      1. 请问现在可以吗

        1. 前几天已经修复该问题,更新相关文件即可。

  2. 好的 谢谢

  3. 回复it精英it精英

    密码找回输入邮箱后,提示邮箱设置错误

    1. 最新版需要在个人信息页设置smtp

      1. 回复it精英it精英

        设置了,也不行‘’

  4. 楼主好!我装了,访问users.php 显示网页无法访问。是什么情况呀

    1. 请提供更多信息,目前无法判断

      1. HTTP ERROR 500错误

        1. 要么你将PHP版本告诉我,要么给个地址我让我自己看。就一个500错误,怎么知道错误呢??

          1. 版本5.6.14 - MySQL Community Server (GPL)

          2. 已正常,是PHP版本低了。

  5. 希望能支持配置SSL的smtp

    1. 可以增加

    2. 已经能支持SSL,2.0的版本已经支持

  6. 还有能否增加sqlite版本的呢,记账用mysql数据库感觉有点重量级了

    1. 可以有

    2. 已经有SQLite版本,见github的分支

  7. 为什么分类会显示???

    ????

    1. 看数据库是否乱码,若乱码就是数据库问题

  8. 谢谢狼哥,数据库是否乱码怎么看啊,请问这个怎么创建其他用户,我需要一个记账系统,可以创建多个用户,管理员跟其他用户可以使用不同账号登录系统,但权限不一样。每个用户只能看到自己记录的账目,管理员可以看到所有账目。

    1. 数据库不知怎么看的话,有点难度。可以多账户,管理员就是默认第一个,其他注册都是非管理员。管理员只可以看到其他的账号,看不到记账数据。

  9. 我的网站是,www.jizhang.online,没有注册按钮

    1. 文章开头的内容你没看?有开关的好吧

  10. 回复YourfansYourfans

    安装完之后,进入账本,默认分类两项:默认支出、默认收入;均显示乱码,但是进入数据库查看,显示正常,数据库编码也是utf,但是不知为何前台显示是乱码呢?

  11. 回复YourfansYourfans

    本地调试环境,Windows+phpstudy,测试安装后,编辑分类这块,无法保存中文,显示均为乱码,请核查下

    1. 测试不出来这种情况。。。不过看了下,是可以加上那一句代码的

  12. 回复YourfansYourfans

    乱码问题解决了:function.php 文件,修改第7行,if(!$conn){die('数据库打开失败!');}else{
    //数据库增加中文录入。by goodboy 2019-4-8 周一
    mysqli_select_db($conn,DB_NAME);
    mysqli_query($conn,'SET NAMES utf8');
    }。

    原来作者的版本,没有这问题,这个版本把进数据库的数据编码给删掉了。

  13. 回复YourfansYourfans

    大赞啊,来个汇总统计功能吧,没有统计实在看起来太累。比如个人余额汇总在页面的侧栏,看起来多爽

  14. 回复YourfansYourfans

    建议:根据每个账户汇总余额,然后再来一个总的余额显示,参考随手记的记账模式;2,建议把“默认账户”增加进账户管理里,可以修改默认账户的名字,方便后期参与统计

    1. 默认账户是为了部分人不想使用账户功能而设计的一个东西,这个默认的不涉及账户中的金额变化,其他账户需要做金额处理的。
      如果是初始化余额是正确的,通过账户之间的收入和支出,总余额是会保存准确的(有其他未记录的来源除外)

  15. 回复HooverHoover

    正常安装了,但是到了登陆页面输入错误的账号密码显示密码错误。输入正确的账号密码,点登陆完全没反应,也不跳转到其他页面,也没任何提示。我用的PHP7.0+apache+mysql。求解。

    1. 登录页面,浏览器F12看登录时返回什么

      1. 回复HooverHoover

        好像这里提示有错误。难道是我环境版本问题?
        "
        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
        "

      2. 回复HooverHoover

        openssl_encrypt()函数未定义。会不会是我某个扩展插件未开启?

        1. 是的,cookies加密需要

          1. 回复HooverHoover

            但是又出现新问题。
            今晚我在MACos上安装运行环境后。安装网站程序,提示数据库连接出错。密码账号等都没问题。

            1. 回复HooverHoover

              问题找到了.连接不上数据库是因为之前安装MySQL的时候选择了新的密码验证方式,导致登陆数据库验证通不过.在安装新版SQL的时候记得要选择兼容验证模式.这个送给和我一样的新手,希望大家少走弯路.
              另外,向无私分享源码以供大家学习使用的楼主和老郑致敬.

      3. 回复HooverHoover

        已经找到问题。php.ini中,extension=php_openssl.dll 插件未开启。
        去掉注释符,重启apache以后恢复正常。
        谢谢提醒

  16. 回复HooverHoover

    然后我又去群晖上新建一个运行环境,安装过程中同样提示数据库连接有问题。明天我再继续找答案。

  17. 测试程序很好用,简洁实用,喜欢,点赞。never.money

  18. 回复纵然陈纵然陈

    安装时提示openssl()不支持

    1. 那就自己修改环境,不支持的话,在登录的时候会登录不了。登录信息加密需要用到。

  19. 回复烈日寒冰烈日寒冰

    如果能添加上传附件的功能就更加完美了,就是每条记账明细允许上传一个文件,并允许后续删除或修改附件,防止上传错了,不知道后期会不会加上呢,期待!

    1. 一条记账记录的附件是哪些呢?感觉增加记账麻烦

      1. 回复烈日寒冰烈日寒冰

        以后会增加附件功能吗

        1. 短期内应该不会增加,但可以考虑使用备注的功能,有时间再想想

  20. 回复烈日寒冰烈日寒冰

    附件作为可选,不是必须。比如记账一笔,但是包含多个费用,可能对应一张明细单、一张收据、一个excel文件等。假设这次记账1万,包含很多东西的采购,把这些东西单独列出来更麻烦,不现实,,直接把单据上传,就更好

添加评论

您好,#请填信息# 确定

打赏请博主喝水
LOADING