美文网首页零基础学编程
0083 实现图书管理系统的个人信息查询功能

0083 实现图书管理系统的个人信息查询功能

作者: 学哥量化交易学习 | 来源:发表于2019-08-07 11:06 被阅读0次

    上节课完成了公共图书库存查询功能。

    这节课来完成用户个人信息查询功能。

    编写用户个人信息查询功能

    首先需要编写一个用户通过IC卡号和密码登录的功能,登录成功之后页面显示用户的信息,包括借阅历史清单以及目前待支付的总借阅费。

    用户登录显示文件,user_login.php代码如下:

    image image image

    用户登录页面处理文件,user_login_do.php代码如下:

    image image

    用户个人信息显示文件,user_index.php代码如下:

    image image

    用户个人信息页面处理文件,user_index_do.php代码如下:

    image

    数据库操作文件,entity.php代码修改如下:

    image image image

    测试用户个人信息查询功能

    浏览器访问公共端图书库存查询页面:

    image

    点击右上角的登录按钮:

    image

    然后输入用户的IC卡号和密码和验证码,然后点击“登录”按钮:

    image

    可以看到用户的个人信息,待支付借阅费信息,用户的借阅历史记录。

    全部功能测试并修正代码

    到这里为止,图书馆管理系统的全部的功能已经都完成了,可以开始按照之前的系统测试案例设计进行全面的功能测试。

    学哥经过测试,发现以下问题:

    1.check_auth权限检查有漏洞

    在员工登录到后台之后,不同的员工根据权限设置可以访问不同的菜单和页面,但是在check_auth.php里面只是检查了是否有权限,并没有检查具体的页面权限,这就存在漏洞,某个员工登录之后,可以通过直接访问页面url,从而绕过权限限制。

    例如,使用zhangsan账号登录,本来张三只有2个菜单的权限,就是“图书管理”和“库存管理”,然是如果zhangsan登录之后,直接在浏览器地址输入return_list.php,直接访问就可以访问这个页面,这就是有漏洞了。需要补充检查代码。

    修改方案:

    首先修改check_auth.php如下,检查每个页面相应的权限限制:

    image

    然后修改employee_list.php,将$top_menu_index=1;代码从下面移动到第一行代码,如下:

    image

    然后按照上面的方法,修改其它所有的一览和详细页面,文件清单如下:

    employee_detail.php

    books_list.php

    books_detail.php

    stock_list.php

    stock_detail.php

    user_list.php

    user_detail.php

    borrow_list.php

    return_list.php

    fillcard_list.php

    order_list.php

    2.新建用户的收押金订单,删除时排除此订单删除用户并删除此订单

    修改entity.php文件如下:

    image image

    3.损毁丢失的书本的状态要修改为已损毁,这样就可以防止再次将这本书上架并被借出,从而产生逻辑错误。

    修改entity.php文件如下:

    image

    4.库存和用户管理的页面初始化的时候,要设置状态检索条件的初始值为“全部”。

    修改stock_list_do.php文件如下:

    image

    修改user_list_do.php文件如下:

    image

    相关文章

      网友评论

        本文标题:0083 实现图书管理系统的个人信息查询功能

        本文链接:https://www.haomeiwen.com/subject/dflwdctx.html