- PHP项目开发全程实录(第4版)
- 明日科技编著
- 1069字
- 2021-02-03 09:33:39
2.14 软件升级管理模块设计

视频讲解
2.14.1 软件升级管理模块概述
软件升级管理模块实现对软件升级包的管理,其具体的功能包括添加升级包、编辑升级包、添加序列号和编辑序列号。软件升级管理模块中的添加升级包和添加序列号是一一对应的,其中根据所属的类别和版本来确定升级包对应的序列号,每一个版本和类别的升级包对应一个序列号。
2.14.2 软件升级管理模块技术分析
在软件升级包管理模块中,应用到一个动态输出下拉列表框中值的技术。下面就来讲解一下该技术是如何实现的,在讲解该技术之前,先来了解下拉列表框的基本结构。

所谓动态输出下拉列表框中的值就是从数据库中读取数据,将获取到的数据输出到下拉列表框中,而不是直接在下拉列表框中设置某个固定的值。这里以软件升级管理模块addsjb.php文件中的所属类别下拉列表框为例进行讲解,其中设置下拉列表框的名称为typeid,默认值为“请选择”,value的值是从数据库中获取的ID值,显示的内容为从数据库中获取的类型名称。动态输出下拉列表框中的值使用的关键代码如下:
例程24 代码位置:资源包\TM\02\bcty365\admin\addsjb.php

下拉列表框不但可以动态输出数据库中某个字段的数据,而且可以输出数组中的数据。下面就实现一个在下拉列表框中动态输出数组中数据的功能,首先创建一个下拉列表框,然后设置下拉列表框的值,从数组中读取数据,应用for循环语句进行输出。代码如下:

2.14.3 软件升级包上传的实现过程
软件升级包上传使用的数据表:tb_bb、tb_type、tb_sjxz

图2.44 软件升级包上传的运行结果
软件升级包上传在添加升级包模块中实现,通过一个文件域文本框将升级包提交到服务器中指定的文件下,并且将该文件在服务器中的路径存储到数据库中,便于在前台实现对软件升级包的下载。其运行结果如图2.44所示。
在本模块中通过addsjb.php文件来提交升级包的信息,通过savesj.php文件来对表单提交的数据进行处理。其中在将升级包上传到服务器的指定文件夹的过程中,主要应用的是move_uploaded_file()函数。在savesj.php文件中,首先获取表单提交的数据,然后判断服务器中是否存在指定的文件,最后应用move_uploaded_file()函数将升级包上传到指定的文件夹下,并且将数据存储到指定的数据表中。程序代码如下:
例程25 代码位置:资源包\TM\02\bcty365\admin\savesj.php

2.14.4 软件升级包删除的实现过程
软件升级包删除使用的数据表:tb_bb、tb_type、tb_sjxz
软件升级包删除的实现主要根据当前数据中提供的ID,执行delete删除语句,将数据表中相同ID的数据删除。其运行结果如图2.45所示。

图2.45 软件升级包删除的运行结果
该功能主要通过editsjb.php文件和deletesjb.php文件实现。通过editsjb.php文件输出数据库中存储的有关升级包的信息,以分页的形式显示,在每条记录的最后设置一个删除链接,通过脚本来调用deletesjb.php文件,根据变量中的ID值执行删除升级包的操作。关键代码如下:
例程26 代码位置:资源包\TM\02\bcty365\admin\deletesjb.php
