【SQL开源代码栏目提醒】:网学会员SQL开源代码为您提供毕业设计论文-网吧收费系统(含源代码) - 毕业设计参考,解决您在毕业设计论文-网吧收费系统(含源代码) - 毕业设计学习中工作中的难题,参考学习。
题 目:网吧收费系统姓 名:系 别:计算机工程系指导教师: 二0 年三月 摘要 计算机日益普及的今天我国网民数量日益增多.其中网吧是网民集中的场所在利益的驱使下越来越多的网吧成立.网吧的管理也成了一 个新的问题一方面是硬件的安装与维修网络安全的组建.还有一方面就是网吧收费.网吧这样的公众场所人员流动性大不可能完全靠人力 去解决而且管理者和工作人员之间也要有帐目的清算. 而且为了节约成本网吧的工作人员也不会有太多如何达到这样的目的信息化的时代还是 要靠科技.面对这样的现实一款应用软件就能把这些问题解决软件该怎么做需要什么功能我们自然不能靠简单的理论分析有机会 还是要到实际的生活中去了解只有这样才能保证做 出的系统有较高的使用价值.在开发图书管理的过程在实际调查后确定开发流程基本功能设计文档研究方案. 现在网吧不单是靠提供计算机给网民上网服务还加有商品的销售商品销售如果只是靠人员来记录消费情况会提高出错的概率而且在人员换班的时候 帐目清算是件很麻烦的事情. 如果把商品 的销售也加进这个系统中工作人员只是输入商品的编号,帐目就有系统自动结算. 还要考虑到系统实际运行执行
代码的效率,功能模块很多的时候,运行速度就成了新的问题,如何解决,让起流畅运行呢? 数据库安全的问题,计算机毕竟只是机器而已,受外界环境影响很大,所以也要考虑备份数据库. 这次开发只是开发了收费系统的服务器端还要开发出对应的客户端与服务器连接起来才可以正常使用.问题的提出:讲清所研究的问题“是什么”。
选题背景及意义:讲清为什么选择这个题目来研究,即阐述该研究对学科发展的贡献、对国计民生的理论与现实意义等。
文献综述:对本研究主题范围内的文献进行详尽的综合述评,“述”的同时一定要有“评”,指出现有研究成果的不足,讲出自己的改进思路。
研究方法:讲清论文所使用的科学研究方法。
目录1.前言2. 需求分析2.1 用户定位分析2.2 功能需求分析2.3 性能需求分析3.系统分析3.1 环境平台分析3.2 程序功能设计3.3 程序流程设计4. 详细设计4.1 程序单元设计4.2 程序单元编码4.3 集成开发5. 系统实现5.1 系统模块一6 结论与展望参考文献 前言根据自己的爱好和软件编程的能力我选择用 VB 编写网吧收费系统的服务器端只是编写出了基本的功能比现实生活中使用的要粗略.但是这个系统只是自己的一次实践我会在以后的学习中继续努力的 编写这个应用程序其意义在于锻炼了我的动手能力和逻辑思维能力而且以前也从来没有尝试过编写这样综合性的程序培养了对问题考虑的全面性. 为了编写有实用价值的东西我还参阅了大量的资料包括网络资料的选择当然在程序完成只后也不能只有编写者才会用所以要写出对应的帮助文挡一般的软件都会有这是我们生活中的常识. 只是限于水平 只能编写部分功能数据库安全方面也不可靠.一直在寻找解决办法如果能够采用动态数据库这些问题就能解决了. 科学这东西讲究的就是严谨的态度建立数学模型有助于完成设计在设计的时候避免出现思绪混乱 在经过系统功能需求分析在大脑中 已经有很清晰的的目标可以画出要进行的流程图比如先根据功能模块确定好选择数据库然后根据实际编写数据库表完成数据库表的关联可以先保存后等窗体确定完毕再连接数据库. 经过
代码调试确定能正常运行. 2.需求分析 2.1 用户定位分析1.合理的工具设置:用户要求界面简洁 容易操作.于是可以使用工具条进行设置把经常要使用的功能用工具条单独罗列出来比直接在菜单中选择效率要高.2.安全要求:为了避免意外事件或者是人为原因导致数据库信息丢失要做好数据库的保秘和数据库灾难性恢复.3.简单的操作方式:因为需要有的时候需要对客户机进行远程控制这样管理起来就轻松起来 .4.提供全面的数据查询和统计:可以任意选择查询条件而且为了方便可以设置统计报表功能.5.报表打印导出功能:要随时可以导出以报表格式存放打印出来长期备份.6.会员卡管理:会员卡较之现金交易比较方便管理7.商品管理:能够对商品进行销售统计存储查询.8.网址限制:现在网络病毒流行尤其要注意一些不良网页上隐藏病毒所以要限制一些网站. 2.2 功能需求分析主要功能: 对网吧的人员,资源进行管理。
公布网吧的通知公告等信息,发布网吧内外新闻动态,提供上网人员的意见、建议反馈场所,管理网吧内的计算机,对上机用户的情况进行统计,计时计费等。
具体功能:被控制机有一个服务器,控制器集中在管理机上。
可以控制登陆,并进行计时,这是两个基本功能;管理机还有上机,下机结帐,开机,关机,重新启动等功能。
网络管理、计费系统:本网站最重要和最复杂的功能。
又分会员注册,登录,以及会员的审核系统,员工的管理,计时计费,计算机管理等小系统。
资源管理:分为流行歌曲,影视频道,游戏推荐,动漫Flash精彩图片几个模块。
交流平台: 提供在线交流的平台收集上网人员的相关的意见和建议并及时处理,对有必要的问题进行回复。
以上功能大部份为系统已实现的基本功能,在开发本系统时也为后继系统扩展开发留有接口,使系统更加方便地可以进行升级和扩展。
2.3 性能需求分析强大的安全保障:网络通讯全面采用数字证书认证体系,具有与网上银行同等的安全级别;基于角色的权限管理允许灵活定制管理权限;具有完备的数据保密、备份、灾难恢复等机制,保证数据高度安全可靠。
严谨与高效的业务流程设计:网吧计费管理系统业务数据遵循财务准则设计,严谨、规范;众多独到的设计不仅方便顾客使用也大大减轻了服务员的工作强度。
易于使用与维护:网吧计费管理系统充分考虑了不同层次使用者的接受能力,服务员经过10分钟简单培训就能掌握,管理人员则拥有众多工具和方法用于简化管理与维护。
此外,为了帮助用户尽快熟练掌握网吧计费管理系统的应用,相关软件公司还提供了多种方式的培训和技术支持。
集中管理能力:将配置、升级等任务集中到服务器处理,使管理工作大量减少,变得高效。
3.系统分析 3.1 系统平台分析系统的开发、运行、测试环境均选用 Windows 系列的操作系统,因为Windows 系统是PC机上普及最广泛的操作系统,它的界面友好、有高效的计算环境、对硬件的支持程度高、支持On-Now设备、有良好的可移植性和可伸缩性、系统运行稳定、可靠性好、维护方便、容易安装;性能经过优化、安全性好、对网络的支持程度好、使网络应用更为方便快捷。
本系统可运行于Windows 20000以上操作系统,在这些操作系统上都必须安装IIS,当然 最 好 是 在 Windows 2000 Advanced Server 上 运 行 , 因 为 微 软 开 发 的Windows 2000 Advanced Server是专门用来提供网络服务器的,有微软这个强大的技术支持,并且系统运行稳定、维护方便、性能经过优化、对网络的支持程度好、使网络应用更为方便快捷。
考虑到Windows XP Professional是我们平时用得最多的操作系统,比较熟悉,且足够支持开发软件VB和Microsoft
SQL Server 2000。
所以在此我选用了它作为开发环境、运行环境以及测试环境.在选择开发工具的时候考虑到各种编程软件我选择VB6.0主要 有其特点决定的VB 6.0提供了各种丰富的通信接口比较适合这种服务器-客户端.在界面设置上VB 提供可视化编程可以避免大量的
代码编写需要什么样子的窗口布局可以直接在工具箱里面选择然后调整布局.采用的是事件驱动方式
代码执行的过程可以直接控制很方便
代码的调试和改写.比起传统的那些编程语言
代码从开始执行到
代码结涑 3.2 程序功能设计(1)系统功能设计:这一部分是整个系统最基本也是最重要的设置,其中系统设置至少包括以下几方面的内容: 计算机设置: 管理员设置 数据备份 数据还原 系统设置(2)记费用功能设计:包括下面内容 开始记费 限定时间 结帐 调换计算机 选购计算机 客户机控制(3)界面设置功能:主要是对运行中的系统界面设置,不同的工作人员喜欢不同的背景或布局格式,对整个系统没有太大的影响(4)管理功能:包括商品资料管理,客户管理,会员卡管理(5)统计功能: 日报表统计:商品统计和上机统计 月报表统计:商品统计和上机统计 3.3 程序流程设计 1.数据库设计采用无源数据库连接无源数据库” 连接也并不是说不需要数据源, 如果没有数据源则连接是纸上谈兵,只是不需要配置 ODBC 数据源,利用 ADO 就可通过
代码进行连接。
1.1 ADOActiveX Data Object在 Visual Basic6.0 中,数据访问接口有三种:ActiveX 数据对象(ADO) 、远程数据对象(RDO)和数据访问对象(DAO) 。
这三种接口的每一种都分别代表该技术的不同发展阶段,最新的是 ADO,它比 RDO 和 DAO 更加简单,更加灵活。
对于新工程,应使用 ADO 作为数据访问接口。
ADO 是 Microsoft 数据库应用程序开发的接口,是建立在 OLE DB 之上的高层数据库访问技术。
它封装了 OLE DB 所提供的接口,比起 OLE DB 提供者,ADO 的接口可以使程序员在更高级别上进行数据交互。
ADO 技术不仅可以应用于关系数据库, 也可以应用于非关系数据库。
可以用统一的方法对不同的文件系统进行访问, 大大简化了程序编制, 增加了程序的可移植性。
1.2 建立无源数据库连接在连接数据库前,首先要在 Visual Basic 6.0 菜单中“工程”—“引用”中选择 Microsoft ActiveX Data Objects 2.6 Library 和 Microsoft ActiveX DataObjects Recordset 2.6 Library 这两个组件。
运用 ADO 对象模型的主要元素:Connection(连接)中的 ConnectionString属性进行连接 ConnectionString 为可读写 string 类型, 指定一个连接字符串,告诉 ADO 如何连接数据库。
实例: 以建立登陆系统为例, 在 介绍无源数据库连接。
Microsoft
SQL Server2000 中建立一个 Student 的数据库,在 Student 数据库中建立login_usernamepassword的数据表,Microsoft
SQL Server 服务器的名为data_server。
代码如下:Option ExplicitPublic LoginSucceeded As Boolean引用 Microsoft ActiveX Data Objects 2.6 Library定义连接对象和记录集Dim conn As ADODB.ConnectionDim rs As ADODB.Recordset对取消按钮单击事件的响应Private Sub cmdCancel_Click设置全局变量为 false不提示失败的登录LoginSucceeded FalseMe.HideEnd Sub对登录按钮单击事件的响应Private Sub cmdOK_ClickSet conn New ADODB.ConnectionSet rs New ADODB.Recordset建立无源数据库连接conn.ConnectionStringquotdriversqlserverserverdata_serveruidsapwdDatabasestudentquotconn.ConnectionTimeout 50conn.OpenDim str As String连接连接对象Set rs.ActiveConnection conn设置游标类型rs.CursorType adOpenDynamicIf TrimtxtUserName.Text quotquot ThenMsgBox quot用户名不能为空,请重新输入用户名!quot vbOKOnly vbExclamation quot警告quottxtUserName.SetFocusElse设置查询字符串str quotselect from login_user where name quot amp TrimtxtUserName.Text amp quotquotrs.Open strIf rs.EOF True ThenMsgBox quot没有这个用户, 请重新输入用户名quot vbOKOnly vbExclamation quot警告quottxtUserName.SetFocusElse登录成功,连接主窗口If TrimtxtPassword.Text Trimrs.Fieldsquotpasswordquot ThenLoginSucceeded TrueMe.Hidemain.ShowElseMsgBox quot密码不正确,请重输入密码quot quot警告quottxtPassword.SetFocusSendKeys quotHomeEndquotEnd IfEnd IfEnd IfEnd Sub无源数据库连接则不用配置 ODBC 环境,可以省去手工设置 DSN 的麻烦,这种方法所编写的软件适应性广,又符合专业软件的要求。
DO 封装并且实现了 Microsoft 强大的数据访问接口 OLE DB 的所有功能,它具有通用性好,效率高的特点。
通过 ADO 进行无源数据库连接,省去手工设置 DSN 的麻烦,使 ADO 对象模型获得更大的灵活性.2.界面设置确定 应用程序的功能后从最基本的界面布局设置这一步的关键就是熟悉VB 控件的基本功能包括常用控件和其它需要从部件里面添加的控件.界面设置要合理美观为好.3.
代码编辑VB 采用的是事件驱动方式可以直接选择控件的事件和属性在编写
代码的时候会自动给予提示这样当对一个事件进行
代码编辑的时候如果没有给予格式提醒这个时候要考虑是不是出错了如果没有这种功能这种错误只能到
代码编译运行的时候才会发现那个时候会浪费很多时间来修改错误
代码.4.模块建立模块一般是放全局公用的函数、过程、常数、自定义结构、全局变量等等东西的地方,也就是公用部分的集中场所。
当然,模块中也可以定义 private 的函数或者过程以便公用过程的内部调用。
类模块是定义一个类,类模块中的所有 public 成员必须在创建了累的实例以后才能够调用,需要和标准模块区分开来。
好的编程习惯是把不同种类的功用模块分类放在不同的标准模块中,便于查阅,所以很多程序中会有多个标准模块存在.类模块和标准模块的不同点在于存储数据方法的不同。
标准模块的数据只有一个备份。
这意味着标准模块中一个公共变量的值改变以后,在后面的程序中再读取该变量时,它将得到同一个值。
而类模块的数据,是相对于类实例(也就是,由类创建的每一对象)而独立存在的。
同样的,标准模块中的数据在程序作用域内存在,也就是说,它存在于程序的存活期中;而类实例中的数据只存在于对象的存活期,它随对象的创建而创建,随对象的撤消而消失。
最后,当变量在标准模块中声明为 Public 时,则它在工程中任何地方都是可见的;而类模块中的 Public 变量,只有当对象变量含有对某一类实例的引用时才能访问 5.运行调试1.运行程序 运行程序,可用下列方法之一: 1选择主窗口的“运行quot菜单的“启动”命令。
2按快捷键F5。
3选择工具栏上的启动按钮。
在程序运行过程中,标题栏显示: 工程1-Microsoft Visual Basic运行 表示进入运行状态。
2.暂停运行 若程序有错误,可用以下任一种方式进入中断状态,对程序进行调试: 1选择“运行quot菜单的“中断quot命令。
2按CtrlBreak键。
3选择工具栏上的中断图标。
进人中断状态,标题栏显示: 工程1-Microsoft Visual Basicbreak 若要继续运行,可直接按F5键,或选取“运行”菜单的“继续quot命令。
若要重新运行,按 ShiftF5键或选择“运行”菜单的“重新启动”命令。
3.结束程序运行 结束程序运行返回设计状态的方法为: 1选择“运行”菜单的“结束quot命令。
2选择工具栏上的结束图标。
3按程序的结束按钮或程序窗口的关闭按钮 4.详细设计 4.1 程序单元设计1. 登陆窗口设计:登陆系统窗口界面要简单为好,需要两个标签框用来标明用户名和密码, 两个文本框用来输入用户名和密码, 还有两个命令按扭用来实现登入和取消命令:根据需要添加 ACTIVE XActiveX 控件数据输入和函数功能执行都必须通过容器,因此 ActiveX 控件和容器都必须支持一些特定的接口协议。
根据Microsoft 相应的规格标准,ActiveX 控件应具备如下的性能机制。
属性和方法:ActiveX 控件必须提供属性的名称、方法的名称及参数通过这项机制容器可以存取和改变 ActiveX 控件的属性参数。
事件: ActiveX 控件由这项机制通知容器在 ActiveX 控件中发生的事件,比如属性参数的改变,用户按下鼠标左键等。
存储:容器由这项机制通知 ActiveX 控件存储和提取有关信息数据等。
ActiveX 控件只要在 Windows 的 Registry 数据库中注册后,就可以像其他 Windows 应用程序一样发挥各自的功能。
ActiveX控件是一个模块化的灵活对象如果某个应用程序或网页需要增加一项特殊的功能,无须重写整个程序,只要灵活地插入一个具有此项功能的 ActiveX控件即可实现。
ActiveX 的优势还在于它的动态可交互性,用户可以动态地在使用过程中, 通过改变它的属性和参数, 在应用程序中实现自己的特殊要求。
也许有的读者会问:目前在市面上可以找到各种各样现成的ActiveX 控件,还有没有必要自己创建 ActiveX 控件呢?关于这个问题很容易解释,现有的控件种类是很多,功能也比较齐全,问题是有许多时候会遇到这种情况: 使用现成的控件虽能完成任务, 但自己需要的一些特性 (属性、事件或方法)该控件却没有提供,还需要自己手工写
代码来实现,而这些特性偏偏在自己的应用系统中又经常会用到, 为了避免大量的重复劳动, 一劳永逸的办法就是在创建自己的 ActiveX 控件。
目前可以使用 VisualBasic 或其它开发工具创建 ActiveX 控件。
无论按照哪种标准,Visual Basic都是计算机历史上最为成功的(同时也是最流行的)编程语言,其中最令人兴奋的特性就是可以创建用户自己的控件并可以像其他控件一样应用于支持 ActiveX 控件技术的应用程序中。
下面通过一个具体实例来阐述如何在Visual Basic 6.0(中文企业版)下进行 ActiveX 控件创建。
设计完成效果图2.主界面设计 4.2.程序单元编码1.登陆窗口
代码:rivate Sub cmdOK_Click 检查正确的密码 With frmMain.Data8.Recordset .MoveFirst For i 1 To .RecordCount If Combo1.Text .Fieldsquot用户名称quot And txtPassword .Fieldsquot用户密码quot Then LoginSucceeded True UserName .Fieldsquot用户名称quot UserPass .Fieldsquot权限quot Exit For End If .MoveNext Next i If LoginSucceeded Then 将
代码放在这里传递 成功到 calling 函数 设置全局变量时最容易的 Unload Me Else MsgBox quot无效的密码,请重试quot quot登录quot txtPassword.SetFocus SendKeys quotHomeEndquot End If End WithEnd SubPrivate Sub Form_LoadOn Error Resume NextWith frmMain.Data8.Recordset.MoveFirstFor i 1 To .RecordCount Combo1.AddItem .Fieldsquot用户名称quot Combo1.ItemDataCombo1.NewIndex .AbsolutePosition .MoveNextNext iEnd With2.管理员模块
代码Dim aa As LongPrivate Sub Combo1_ClickCommand4.Enabled TrueEnd SubPrivate Sub Command1_Click添加用户On Error Resume NextIf Command1.Caption quot添加用户quot Then ListView1.Visible False Frame1.Visible True Text1.Text quotquot Text2.Text quotquot Text3.Text quotquot Text4.Text quotquot Combo1.Text Combo1.List0 Command2.Enabled False Command3.Enabled False Command4.Enabled True Command1.Caption quot放弃添加quot Else ListView1.Visible True Frame1.Visible False Command2.Enabled True Command3.Enabled True Command4.Enabled False Command1.Caption quot添加用户quotEnd IfEnd SubPrivate Sub Command2_Click编辑用户On Error Resume NextWith frmMain.Data8.Recordset Text1.Text .Fieldsquot用户名称quot Select Case .Fieldsquot权限quot Case quotAquot Combo1.Text Combo1.List0 Text2.PasswordChar quotquot Text3.PasswordChar quotquot Text4.PasswordChar quotquot Text2.Text .Fieldsquot用户密码quot Text3.Text .Fieldsquot用户密码quot Text4.Text .Fieldsquot用户密码quot Case quotBquot Combo1.Text Combo1.List1 Text2.PasswordChar quotquot Text3.PasswordChar quotquot Text4.PasswordChar quotquot Text2.Text .Fieldsquot用户密码quot Text3.Text .Fieldsquot用户密码quot Text4.Text .Fieldsquot用户密码quot Case quotCquot Combo1.Text Combo1.List2 Text2.PasswordChar quotquot Text3.PasswordChar quotquot Text4.PasswordChar quotquot Text2.Text .Fieldsquot用户密码quot Text3.Text .Fieldsquot用户密码quot Text4.Text .Fieldsquot用户密码quot Case quotDquot Text2..