目录引言 (1)1问题提出 (2)2可行性分析 (3)2.1技术可行性 (3)2.2经济可行性 (3)2.3法律可行性 (3)2.4操作可行性分析 (3)3需求分析 (4)3.1对功能的规定 (4)3.2数据流图 (4)3.3 E-R图 (6)3.4数据字典 (6)3.5对性能的规定 (8)3.5.1 精度 (8)3.5.2 时间特性要求 (8)3.5.3 灵活性 (8)3.6 运行环境的设备规定 (8)4概要设计 (9)5数据库设计 (10)6详细设计 (12)7代码设计与实现 (13)8性能测试与分析 (18)结束语 (19)致谢 ........................................................ 错误!未定义书签。
参考文献.. (20)引言在Internet飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。
为了提高房屋信息发布活动的效率,增加房屋信息发布活动的效益,我们开发了网上房屋信息发布系统。
网上房屋信息发布系统基于Internet的服务方式,提供多种安全和协作功能,保证跨地域和低成本的开展房屋信息发布项目,同时采用安全、规范的房屋信息发布流程控制和管理手段,保证供求各方公平有序的竞争,采用动态可调整流程,可以适应多变的商业环境,易于系统维护和降低管理成本,提供全面的安全控管能力,保护系统和用户的安全性,全面支持开放标准,确保系统的互操作性。
编写此论文,是为了对前一阶段的工作作一个总体性的概括,并有助于他人了解该系统。
由于自己学识有限及时间仓促,系统还存在许多待完善和指正的地方,请各位老师多提宝贵意见。
1 问题提出随着计算机技术的日益成熟, internet 网络的全球化,计算机在我们的生活中得到了越来越广泛的应用。
而房屋的交易和租赁活动也日益频繁,但是采用传统人工方式办理,工作繁重,工作量大,耗费时间多效率低下,为了解决传统房屋信息发布的种种不足,有必要开发出一套基于B/S(Browser/Server)模式的高效率、低成本、安全的网上房屋信息发布系统。
它将传统的信息发布活动"搬迁"到Internet网络上,充分发挥Internet技术的优势,实现了对房屋信息方便快捷的管理,节省人力物力资源,提高了信息发布于查询的效率,是协助求租方和承租方、出售方和求购方进行交易的一种有效工具。
2 可行性分析2.1技术可行性根据网上房屋信息发布系统的开发目标,在技术上利用ASP是完全可以实现的。
ASP开发容易,使用记事本就可以进行编写代码,另外,将Dreamweaver结合起来,可以使开发更方便快捷;它的语言相容性好,与所有的ActiveX Script 语言都相容,除了可结合HTML,VBScript、Java Script、Active X服务器组件来设计外,并可经由“plug-In”(外挂组件模组)的方式,使用其他厂商(Third Party)所提供的语言;易于操纵数据库,它可以轻易地通过ODBC(Open Database Connectivity)驱动程序连接各种不同的数据库,例如:Acess、Foxpro、dBase、Oracle等等;并且学习起来容易,ASP提供了五种方便能力强大的内建对象:Request、Response、Sever、Application以及Session,同时,若使用ASP内建的“Application”对象或“Session”对象所撰写出来的ASP程序可以在多个网页之间暂时保存必要的信息。
这就是我们采用ASP作为开发工具的原因。
2.2经济可行性在因特网上进行房屋信息的发布与查询活动,无论是对于求购方、求租方还是出售方、出租方来说,都可以大大节省成本、时间消耗,提高了信息发布于查询的工作效率,推动和促进了信息发布于查询活动的进行。
2.3法律可行性本网上房屋信息发布系统符合国家房产行业相关法律规范。
2.4操作可行性分析系统的简洁、易于操作使得用户能在较短的时间内对系统熟练操作,即使不懂计算机的人,几乎也不用专门的培训学习,就能上手。
3 需求分析3.1对功能的规定本网站为求购方和出售方在信息交互工程中提供了大量的信息,更有利于双方的信息查询。
有利于降低一整套有利于降低用户信息发布活动成本、增强房屋信息发布活动的广泛性、竞争性和透明度的解决方案。
该网上房屋信息发布系统分成前台信息系统和后台管理系统两大模块,前台信息系统包括注册、登录、查看房屋信息、发布房屋信息、搜索房屋信息几个模块,后台管理系统主要实现用户管理,房屋信息的审核、修改、添加等功能。
对于我们来说,一个有效的网上房屋信息发布系统平台应符合这样的要求:必须是构架在交互式网络平台之上,最大限度地方便用户;应有数据库的支持,所有数据(文本素材、数字……)合理地组织在数据库中,最大程度地减少冗余度;应是动态的,页面内容随着客户端交互访问而不断变更;应有引人入胜的良好用户界面,风格明快、使用简便;应能方便地进行维护与管理,对于网站内容的更新替换,全部通过友好界面在数据库中实现;应有一定的安全性,设定权限,非管理人员不得进入数据库中维护操作。
3.2 数据流图功能级数据流图图3.1功能级数据流图1)用户注册数据流图图3.2用户注册数据流图2)用户登录数据流图图3.3用户登录数据流图3)发布房屋信息数据流图图3.4发布房屋信息数据流图4)查看房屋信息数据流图图3.5查看房屋信息数据流图3.3 E-R图图3.6 E-R图3.4 数据字典房屋信息=编号+位置+发布类型+房屋地址+物业类型+房屋结构+卫生间+基础设施+ 设备情况+建筑面积+装修程度+楼层+电梯+房价+房价单位+登记日期+有效天数+联系人+联系电话+联系QQ或MSN+联系E-mail+备注编号=1{数字}3位置=16{字母}40发布类型=4{字母}4房屋地址=20[字母|数字]40物业类型=16[字母|数字]40房屋结构=8{字母}8卫生间=2{数字}2基础设施=20[字母|数字]40设备情况=20[字母|数字]40建筑面积=4{数字}20装修程度=6{字母}8楼层=2{数字}8电梯=2{字母}2房价=2{数字}8房价单位=2{字母}6登记日期=年+月+日有效天数=1{数字}3联系人=4{字母}16联系电话=7[数字|字符]12联系QQ或MSN=1[数字|字母]20用户电子邮件=15[字母|数字]30备注=2[字母|数字|字符]用户注册信息=用户编号+用户名+用户密码+性别+联系电话+用户电子邮件+ 提示问题+提示问题答案+联系地址+个人介绍用户编号=3{数字}3用户名=6[字母|数字]20用户密码=6[字母|数字]14性别=2{字母}2联系电话=11[数字]11用户电子邮件=15[字母|数字]30提示问题=10[字母|数字]50提示问题答案=10[字母|数字]50联系地址=10[字母|数字]50个人介绍=2[字母|数字]50管理员信息=管理员编号+管理员名称+密码+权限管理员编号=3{数字}3管理员名称=6[字母|数字]20密码=6[字母|数字]14权限=1[数字]1数字=1..9字母=a..z+A..Z年=2005.. 2010月=1..12日=1..313.5对性能的规定3.5.1 精度在进行向数据库文件提取数据时,要求数据记录定位准确,在往数据库文件中添加数时,要求输入数据准确3.5.2 时间特性要求a. 响应时间应在人的感觉和视觉事件范围内;b. 更新处理时间,随着系统的版本升级,该系统将相应的进行更新。
3.5.3 灵活性当需求发生某些变化时,系统操作方式、数据结构、运行环境基本不会发生变化,变化只是将对应的数据库文件内的记录改变,或将过滤条件改变即可。
3.6 运行环境的设备规定浏览器端1.至少具有奔腾600配置的计算机;2.Microsoft鼠标或其它兼容鼠标;3.最少100MB的硬盘空间。
4.最少64MB的RAM存储器。
5.VGA显示器或更高。
6.Win98, Win2000中文版或更高版本。
7.一般计算机外设,如:打印机、扫描仪。
服务器端1.至少具有奔腾600配置的计算机;2.Microsoft鼠标或其它兼容鼠标;3.最少100MB的硬盘空间;4.最少64MB的RAM存储器;5.VGA显示器或更高;6.Win98, Win2000中文版或更高版本。
4概要设计系统功能结构图如下,通过下图,我们可以清楚的了解系统所实现的主要功能:图4.1 系统功能结构图5数据库设计在网上房屋信息发布系统的数据库中,主要包括下面的几个表:用户信息表表5.1用户信息表房屋信息表表5.2房屋信息表其中,“有效天数”是用来表示该信息的到期时间,系统根据它来判断信息是否到期,信息超过有效天数时,该信息会被自动删除;“审核”是用来表示是否被管理员审核。
当“审核”=“0”时,表示未被审核。
当管理员对其进行审核后,“审核”=1。
主页上显示的信息就是通过查询房屋信息表中“审核”=1的信息。
管理员信息表表5.5管理员信息表6详细设计网上房屋信息发布的工作流程包括用户注册,用户登录,查看房屋信息发布信息,查看房屋信息,发布房屋信息发布信息,申请权限,修改用户信息,管理员登录,管理员用户管理等,下面就其中的几个模块进行简要介绍:查看房屋信息用户图6.1查看房屋信息发布房屋信息数据库服务器发布用户需求信息填写需求信息访问发布信息页递交写入数据库返回提示 等待管理员审核管理员审核图6.2发布房屋信息7代码设计与实现该系统分为前台信息子系统和后台管理子系统两大模块, 其中前台信息子系统包括用户登录、查看房屋信息、发布房屋信息、搜索房屋信息几个模块,后台管理子系统主要实现房屋信息管理和用户管理,下面分别就前台系统个别模块代码的开发作一简要说明。
前台信息系统登录部分,界面如下图7.1 用户登录界面部分代码如下,主要检验用户输入数据的合法性:<%dim segmentsegment=0uname =trim(request("username"))upass =request("password")if uname="" thensegment=0elsesql = "select * from info where username='"&uname&"'"Set rs = Server.CreateObject ("ADODB.RecordSet")rs.Open sql,conn,1,1if rs.bof or rs.eof thensegment=2else if rs("password")=upass thensegment=1end ifend ifend if%>用户输入帐号及密码后的处理代码如下:<%else if segment=1 thenResponse.Write("<font size=6 color='#FFFFFF'>欢迎您回来!</font>")Session("uname")=unameResponse.Write("<br><font color='#FFFFFF'> <a target='_top' href='addhouse.asp'>")Response.Write("<font size=5 color='#FFFFFF'>我要发布房屋信息</a></font>")'Response.Write(Session("uname"))else if segment=2 thenResponse.Write("<font size=5>用户名或密码错误!</font> ")end ifend ifend if%>发布房屋信息部分,界面如下:图7.2发布信息界面关键代码实现如下:<%sql = "select * from house"Set rs = Server.CreateObject("ADODB.RecordSet")if request("联系人")="" or request("联系电话")="" or request("房价")="" thenif request("联系人")="" then response.write "联系人不能为空<BR>"if request("联系电话")="" then response.write "联系电话不能为空<BR>" if request("房价")="" then response.write "房价不能为空,必须填写<BR>" response.endend ifindate = Now()rs.Open sql,conn,1,3rs.addnewrs("位置")=request("位置")rs("发布类型")=request("发布类型")rs("房屋地址")=request("房屋地址")rs("物业类型")=request("物业类型")rs("房屋结构")=request("房屋结构")rs("卫生间")=request("卫生间")rs("基础设施")=request("基础设施")rs("装修程度")=request("装修程度")rs("设备情况")=request("设备情况")rs("建筑面积")=request("建筑面积")rs("楼层")=request("楼层")rs("房价")=request("房价")rs("房价单位")=request("房价单位")rs("有效天数")=request("有效天数")rs("联系人")=request("联系人")rs("联系电话")=request("联系电话")rs("联系QQ或MSN")=request("联系QQ或MSN")rs("联系E-mail")=request("联系E-mail")rs("备注")=request("备注")rs("电梯")=request("电梯")rs("审核")=0rs.updaters.CloseSet rs = Nothingconn.CloseSet conn = Nothing%>下面的部分代码是用来判断输入的信息是否合法:<script Language="JavaScript" Type="text/javascript"> function FrontPage_Form1_Validator(theForm){if (theForm.位置.value == ""){alert("请在位置域中输入值。