##简介
主要功能为方便合租的小伙伴们管理公共花销(用于班费等集体花销应该也可以),帮助您记录每一笔公共花销,在需要结算时提供一个结算方案。
详细功能介绍参见程序内部说明帮助
##技术实现
基于PHP+SQLite,采用PDO接口操作数据库,便于移植其他数据库。前端部分使用jQuery Mobile实现。考虑到记账这种随手的事儿应该没人会专门开电脑来做,没有适配专门的电脑版前端界面。好在jQuery Mobile实现的前端界面在电脑上看效果也不是太差。
##安装
请确保PHP已启用上sqlite插件。
Windows上测试使用的集成开发环境XAMPP默认支持,Debian需要手动安装。
$ sudo apt-get install php5-sqlite
debian默认未安装sudo,如有需要可直接root下操作。
将所有文件复制到网站根目录或子目录下,浏览器中输入根目录或子目录地址即可。conn.php将自动复制并重命名数据库示例文件为sql.db,如需重新安装只需删除sql.db即可清除所有用户数据,再次访问时sql.db会重新生成。
###数据库移植
数据库中仅适用了text及int两种类型的字段,这两种字段被几乎所有数据库支持(sqlite自己本身就没支持几种)。数据库移植后只需要在conn.php中修改连接语句即可完成移植。
使用sqlite的原因:方便携带;刷了openwrt的703n可以跑得动
##备注
- 首次尝试前后端分离,后台处理数据主要由postdata.php进行。
- js基础薄弱,有些复杂功能没有分离开,php生成html后ajax拉取然后显示(该部分内容在ajaxfunc.php中)。
- jquery文件夹内为jquery mobile 1.4.5和jquery 1.11.3文件所在地,如果自己服务器上有或者有靠谱的国内CDN,可以前往index.html和mobile.html中修改相关地址。官方CDN经常被解析到谷歌的CDN上,导致国内用户无法访问,故并未采用。
##更新记录 ####1.0
- 实现用户注册、账单记录、追加及结算等基本功能
- 由明文存储密码改为MD5加密后存储
- 修正了结算算法中的一个小BUG
- 修正“追加付款记录”中无法默认显示当前时间的问题