毕业设计(论文)Moto手机网站设计前台设计.doc
Moto手机网站设计前台设计 摘要:随着通信技术的成熟,手机的型号日益增多,用以适应人们对时代的要求,也随着网络技术的发展,网上手机信息也不断增多,基于网上对专门手机的评测、价格、市场展望、新机发布、手机信息(如:手机游戏、手机图片、手机铃声)等没有较为完整的设计,我们设计了本网站Moto手机专门网站,本网站对Moto手机进行了较为完整的介绍和提供了较为完整的信息。本论文主要阐述Moto手机网站组成模块的设计思想和实现的关键技术。本网站包括有管理员的登录、会员的注册和登录、手机信息、手机评测等等模块,本论文就对这些模块进行阐述。关键字:新闻模块、评测模块、可管理性目 录1 MOTO手机网站设计的背景01.1网站开发意念21.2网站设计的技术难度22 网站基本设计思想22.1 网站维护22.2 会员注册32.3网站运行监控42.4用户管理42.5后台管理42.6查询生成42.7统计功能53 网站具体实现过程53.1网站具体设计53.1.1重点代码设计53.1.2 SQL Server 2000的介绍103.2提供数据库链接的数据源(ODBC)103.2.1 ODBC配置103.2.2 数据库链接配置文件(parameter.ini)133.3系统开发语言介绍133.4系统功能介绍143.4.1后台管理模块143.4.2关系数据库表154结论与展望17致谢18参考文献191 Moto手机网站设计的背景随着通信事业的不断发展,信息技术的不断成熟,手机在人群中沟通和信息交流中起着越来越明显的作用。如何合理、有效地利用这先进地通行技术来为人类地信息沟通服务是我们设计本网站的初期思想。1.1网站开发意念 网站的开发现在变成了IT业的一类行业,但也成为了人们生活中必须的一种媒体形式存在,也成为了信息传递的一种新生渠道,同时收费网站的设计为很多电脑程序设计者提供了谋生的场地,免费的网站越来越少了。同时,手机也成为了媒体通信的一种新手段,而且逐渐变为不可或缺的人与人沟通的一种方法。有见及此,我们综合以上调查,特意为大家提供免费的Moto手机专业网站,为大家提供Moto手机的免费信息(如:图片、铃声等),为大家提供更方便、更容易了解这款手机和得到它的最新信息。提高大家对Moto手机的了解。1.2网站设计的技术难度 近年来网页设计的技术要求越来越高,静态网站已经不再符合要求了,现在开发的网站的主要是以动态网站为主,它的好处是根据动态数据链接来更新网站上的内容,不再需要像以前那样用人手把每页的内容进行更新,减轻了网站维护的难度,但增加了网站本身设计的难度,代码是运行在网页中的中计算机文字,动态网站的设计就是要在网站的设计中同时对需要运行程序的地方写入合适的代码,让网站做到与管理员、用户互动,编写这些代码不但要求符合应用要求,而且要求不能有一丝的错误,因为一丝的错误就能导致网站不能正常地运行,本网站的技术难度就是在于代码的设计,涉及的就有新闻模板、手机评测模板、管理员登录、用户注册这几大模板。要设计合适自己网站的代码就要自己明白网站的用途和网站的定位,经过调查和查阅书籍,我们已经解决网站设计中的问题了!2 网站基本设计思想为了网站变得容易管理,我们的设计基本思想为下图的显示方案(图1):管理员查询、添加、修改、用户网站主页IndexMoto论坛用户登录、注册Moto社区Moto游戏Moto铃声Moto资讯手机评测模板新闻模板图1:Moto手机专业网站布局图2.1 网站维护对从事网站设计的人员对网站的管理是一件必不可少的事情,如:用户管理是对网站流量的一个管理和对用户对网站的意见、要求的及时回应的一种手段,还有其他模板的管理一样重要,是保持和增加用户浏览量的一个重要手段,网站的流量是衡量一个网站是否受欢迎的一个重要标准,维护网站包括内容的更新,特别是对用户要求内容的更新等等。以下是对网站管理的重要意义和维护手段:1. 用户管理,包括用户登录、用户注册、用户是否违反规定非法盗用网站内容,这不仅对网站的安全有着重要意义,而且对网站的内容更新有重要作用,通过对用户反馈的信息可以几时对网站进行修改。2. 新闻模板是本网站的一个重要的组成部分,对这部分的维护尤其重要,这是保持网站流量和吸引游客或用户的一个重要手段,对新闻模板的维护重要是结合网上的其他网站的更新内容综合起来,同时也要自己到其他资料中寻找有用的资料加以结合来增加用户的浏览兴趣。3. 手机评测模板是网站的又一重要组成部分,也是本网站的重要环节,主要是体现本网站对Moto手机的了解程度,也是本网站的一重点,通过不断对数据库的更新,来保持本网站Moto手机最新资讯。4. Moto主要信息(如:手机图片下载、铃声下载、游戏下载等)模板是应手机用户的要求为其提供最新的、最好的手机信息内容,主要是通过与用户商的联系,来获取最新的图片、游戏、铃声以供用户下载,同时也要保证网站内容不受侵犯和合法性。5. 论坛的管理是要求谨慎,论坛是为大家提供一个对Moto手机的讨论的地方,同时也是管理员对用户意见的一个接受地方也是网站进行维护、出通告、更新资料通知的一个重要地点。管理员同时也要对论坛上的言论进行限制,如:讨论的内容只能围绕Moto进行,论坛中不能列入不良的内容等等。违反规则的管理员可以进行处分,如:进行列入黑名单、封ID等等,情况视情节轻重再定,实行以上手段进行维护论坛的重要性和单一性,以确保网站的清洁。6. 后台的管理,后台是管理员才能进行操作的模板,主要操作就是进行网站内新闻的发布与更新,评测内容准确性的审核与发布,论坛的管理,用户注册申请提交的审核与批准等等,正是管理员对网站的主要管理操作。后台等同于网站的灵魂,重要的信息发布场所。7. 网站界面的维护就是通过不断的测试对网站在网上不同系统中运行的保证,界面是一个网站的外形结构,他所体现的是网站设计者对网站开发的信心和管理的程度,同时也决定网站是否吸引用户的一大因数。2.2 会员注册 会员是网站的固定游客,会员的多少同时是网站是否受欢迎的一个标准,会员的注册与否先是由游客决定的,决定注册会员后,就由管理员从多方面审核决定是否予以通过,因为会员同时也是网站的高级用户,可以享受到网站上面的锁定资源,所以要谨慎处理。会员注册模板定位为管理员层面。2.3网站运行监控以上几条都提到了网站的保护手段,这些都是网站运行的监控手法的一种,网站运行监控不但要求网站的正确运行,而且要求网站可以满足用户的需求,还要确保网站的安全,以免被非法盗用等等、 通过用后台的监控程序可以将用户的操作状态即时反馈到系统的监控后台上,点击具体用户还可获得更详尽的信息。借此项功能使管理员全面掌握用户在网站中的浏览情况,以便进行控制管理,管理员还可以向当前或全部用户发送提示、警告、错误等,利用工作站屏幕锁定功能,管理员还可以锁定用户权限,使其权利受限,用户不能执行任何操作,使用户不法行为有一个铁的证据。2.4用户管理 用户管理包括用户操作管理等, 用户的网站浏览、用户注册、用户登录、操作情况、论坛中发贴情况、帖子内容管理都受到管理员的管理,主要是保证网站的安全性,同时也可以及时反映用户对网站的使用情况,让管理员及时对网站中的错误进行修改,保证用户的浏览权利,同时也可以对网站中不良的用户进行警告、排除等等。确保其他用户的权利。2.5后台管理 后台是管理员管理网站中所有信息的地方,其中包括网站信息发布、用户注册、登录、使用情况管理、管理员登录,修改、删除、更新内容等操作。所以后台需要一个干净的操作环境,方便管理员自己对网站的修改和管理。2.6查询生成 网站在此提供了各种查询功能来满足用户和管理员的信息需求,其中包括分类查询(如:手机信息、手机评测、手机新闻等等)、名称查询、论坛讨论帖子查询等。通过用户权利可以做到以上的查询,这可以为用户提供方便的浏览。2.7统计功能 可以按用户名、注册时间、登陆时间统计某段时间内用户的浏览情况、统计所有用户在某段时间的浏览情况,统计用户在论坛的登录次数、发帖数等;也可以统计某天或某段时间内浏览人数、论坛上人数等。所有这一切都极大地方便了管理员对用户情况、论坛的使用,便于对今后的网站管理有着重要作用。这也是管理员所管理的层面。3 网站具体实现过程3.1网站具体设计网站的设计主要组成模板有新闻模板、注册模板、评测模板、论坛模板等几块动态模板,一下我们来看一下其中几块模板的设计代码,了解一下我们网站在设计中的几个难点和重点设计,正因为网站需要动态的显示各模板的功能,所以在设计中我们结合了容易管理的思想,根据具体的要求设计了自己的代码,使自己管理员在管理中减轻管理负担,降低了管理难度。3.1.1重点代码设计用户注册语句:<title>regr</title><!-#include file="config.asp"-> <!-#include file="conn.asp"-> <%if NOT isempty(request("RegSubmit") then if session("regtimes")=1 thencall MsgBox("对不起,您刚注册过用户!","Back","None")response.endend ifset rs=server.CreateObject("adodb.recordset")rs.open "select username,useremail from user where username='"&trim(request("username")&"' or useremail='"&trim(request("useremail")&"'",conn,1,1if not rs.eof and not rs.bof thencall MsgBox("您输入的用户名或Email地址已存在,请返回重新输入!","Back","None")end ifrs.closers.open "select * from user",conn,1,3rs.addnewrs("username")=trim(request("username")rs("password")=md5(trim(request("password")rs("useremail")=trim(request("useremail")rs("quesion")=trim(request("quesion")rs("answer")=md5(trim(request("answer")rs("realname")=trim(request("realname")'身份证rs("identify")=trim(request("identify")rs("mobile")=trim(request("mobile")rs("userqq")=trim(request("userqq")rs("adddate")=now()rs("lastvst")=now()rs("loginnum")=0rs("postcode")=0rs("score")=0rs("paymethord")=0rs("deliverymethord")=0rs.updaters.closeset rs=nothingresponse.Cookies(cookieName)("username")=trim(request("username")response.Cookies(cookieName).expires=date+1session("regtimes")=1session.Timeout=1call MsgBox("注册成功","GoUrl","index.asp")end if%>用户登录失败提示代码:<!-#include file="config.asp"-> <!-#include file="conn.asp"-> <%if NOT isempty(request("LoginSubmit") thendim username,passwordusername=replace(trim(request("username"),"'","")password=md5(replace(trim(request("password"),"'","")'if username="" or password="" then'call MsgBox("对不起,登录失败,请检查您的登录名和密码","None","None")'end ifset rs=server.CreateObject("adodb.recordset")rs.Open "select * from user where username='"&username&"' and password='"&password&"' " ,conn,1,3if not(rs.bof and rs.eof) thenif password=rs("password") thenresponse.Cookies(cookieName)("username")=trim(request("username")response.Cookies(cookieName)("vip")=rs("vip")rs("lastvst")=now()rs("loginnum")=rs("loginnum")+1rs.Updaters.Closeset rs=nothingSession("IsUserLogin")=Trueresponse.redirect "muser.asp"elsecall MsgBox("对不起,您的用户名或密码有误!","Back","None")end ifelsecall MsgBox("对不起,您的用户名或密码有误!","Back","None")end ifend if%>新闻模板设计:<script language="JavaScript" type="text/JavaScript"><!-function MM_reloadPage(init) /reloads the window if Nav4 resized if (init=true) with (navigator) if (appName="Netscape")&&(parseInt(appVersion)=4) document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; else if (innerWidth!=document.MM_pgW | innerHeight!=document.MM_pgH) location.reload();MM_reloadPage(true);/-></script> 登录权限模板错误提示:<body><table width="778" height="271" border="1" align="center" cellpadding="0" cellspacing="0"> <tr> <td width="780" height="27" background="pi/mobile_29.jpg"> </td> </tr> <tr> <td height="218"><div align="center">对不起!您还没有登录.</div></td> </tr> <tr> <td background="pi/mobile_29.jpg"> </td> </tr></table><!-#include file="footer.asp"-></body>3.1.2 SQL Server 2000的介绍数据库几乎是每一个系统的核心部分,该系统也用数据库来管理数据,用的是Microsoft SQL Server 2000数据库系统。SQL (Structured Query Language结构化查询语言)是目前使用最广的并且是标准的数据库语言。SQL语言使得存取或更新信息变得十分容易,你可以直接使用SQL从网站上查询信息。SQL Server 2000是微软公司最新版的大型数据库服务器,其性能指标在各方面都有赶超Oracle数据库的趋势。在经历了SQL Server 6.5和7.0两个版本的尝试后,微软公司终于开始向大规模的业务领域进发了。记得在以前各种关于SQL Server的文章,都会将其定位成中小型应用方面,这种感觉被大家自然的延续到了2000版之中。其实这是一种误解。在过去的很长一段时间中,微软公司聘请了世界上最优秀的数据库专家以及专门搭建了信息量可谓空前的地理信息系统,励精图治,就是为了摘掉扣在自己头上的这顶帽子。有了强大的性能和功能支持,再配合其一向为人称道的易用性,SQL Server可以说成为了开发者手中的一柄利器!3.2提供数据库链接的数据源(ODBC)3.2.1 ODBC配置 ODBC(Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。打开à程序à控制面板à管理工具à数据源(ODBC),如图2所示,选择“用户DSN”图2 ODBC数据管理器按“添加”,出现下图窗口: 图3 创建数据源选择“SQL Server”,按完成。出现下图窗体:图4 创建到SQL Server的新数据源在“名称”Text框中输入程序所用数据源名和选择连接的SQL Server服务器。按“下一步”,出现下图窗体: 图5 选择SQL Server的ID选择“使用用户输入登录ID和密码的SQL Server验证(S)。”,填写用于连接系统所用数据库的用户名和密码。“客户端配置”默认设置为使用TCP/IP协议。按“下一步”出现下图所示窗体:图6 选择数据库更改默认的数据库为目标数据库(本系统用的数据库为abcDB)。其它设置默认。按“下一步”,下一步的设置为系统默认。按“完成”出现测试窗体。按“测试数据源.”测试一下配置是否正确。如果正确按确定完成数据源(ODBC)配置。3.2.2 数据库链接配置文件(parameter.ini) 程序与数据库连接是通过配置文件 parameter.ini实现的,内容如下:DataBaseODBCSource="LabManage"SqlServerUser="abc"SqlServerPassword="abc"3.3系统开发语言介绍本网站设计语言主要就是Asp网页设计语言,主要忧VBScript和JavaScript两种,通过Asp网页设计语言我们实现了网页中的动态数据链接功能,如:用户注册、新闻模板设计(根据后台更新新闻内容,在网页上显示在新闻模板的最先位置)、手机评测模板(从后台更新内容自动显示在评测模板的最先位置)等,在语言方面我们主要是更具网站的需要而编写的,适应在网站的主要模板上,经过不断的测试、查找书籍来简化Asp网页中的语言代码。最后定下的代码就应用在动态的Asp网页上。如我们在手机游戏模板中就用到了ASP网页语言中的JavaScript语言:<P align=center><FONT size=4><IMG src="game/image/slideshow.gif" width="176" height="208" border=0 align=absMiddle style="CURSOR: hand" onclick=javascript:window.open(this.src); onmouseover="javascript:if(this.width>570)this.width=570;" onload="javascript:if(this.width>570)this.width=570;"></FONT></P>3.4系统功能介绍 网站的主要功能就是为Moto手机用户提供关于Moto手机的最新动态消息和手机信息内容,包括后台数据的管理、网站的浏览、手机资讯的更新、手机信息内容的下载等等,管理员为保护注册用户的权利,设置了下载权限(如:手机图片、手机铃声、手机游戏等)模板。这些模板只有注册用户才能登录,有效保护了网站的注册用户的权利。3.4.1后台管理模块后台管理是管理员对网站的管理的重要模块,管理员登录入口是管理员进入后台管理系统的重要通道(如图1):图1:管理员登录进入后台数据库必须拥有管理员帐号和密码才能进入管理界面,因为管理涉及网站的运行与维护等操作,而且还影响网站的安全,所以必须谨慎保护好网站管理员帐号与密码。管理界面是管理员进行管理后台的重要模块(如图2):图2:管理界面 管理员的管理包括用户管理、数据库管理等操作,具体操作在网站设计中已经进行定位。3.4.2关系数据库表(1) 手机总表表1手机总表序号字段名称字段类型字段长度字段含义备注1Lab_IdInteger4编号主键-从键2Lab_NameVarchar30手机名称如:V703Lab_UnitVarchar60所属型号如:V系列3Computer_CountInteger4手机总数量4Computer_AvailInteger4手机可用数量5Computer_InutilityInteger4手机不可用数量停产6RemarkVarchar20备注 (2) 型号表表2手机型号表 序号字段名称字段类型字段长度字段含义备注1Class_IdInteger4编号主键-从键2Class_UnitVarhar60所属系如:V系列2Class_NameVarhar30手机如:V703Human_CountInteger4数量4RemarkVarchar20备注(3) 评测表表3手机评测表序号字段名称字段类型字段长度字段含义备注1Material_IdInteger4序号2Material_ClassIdVarchar30物资分类号3Material_NameVarchar60手机名称4Material_NumberVarchar30手机编号5Material_TypeVarchar30规格类型6Material_OutlayVarchar60手机来源7Material_CountryVarchar40国别8Material_makeDatetimeDateTime8制造年月9Material_UseOrientationVarchar60使用方向10Material_AddressVarchar70生产厂家11Material_purchaseDatetimeDateTime8购置日期12Material_UnitPriceMoney8单价13Material_ AddressIdVarchar40出厂号14Material_InputDatetimeDateTime8填制日期15Material_StateVarchar30待机状态16Material_UseUnitVarchar60待机时间17Material_UserVarchar30登记号18Material_StorageUnitVarchar60销售单位19RemarkVarchar60备注204结论与展望随着通信技术的发展,人们对手机的要求越来越高。社会在进步,科学技术在发展,通信技术的发展更是日新月异,软件的更新、新软件的不断推出、硬件的配置越来越高,手机的硬件功能不断增强,要求我们不断提高对手机的理解程度以跟上时代的步伐。今天,我们已经进入信息技术革命的时代,手机、通信和信息处理的广泛普及和应用改变着人们的工作、学习和生活方式,对手机的应用也提出了新的更高的要求。尽管电脑成了通讯信息的较大一部分内容,但不是包括信息传递的全部,可以肯定的是手机不仅能保证信息能安全准确地传送,使人们在生活中加强联系;而且在科技发展中,也起了一定的促进作用,给人们带来更多的方便,相信本文在提供了第一阶段的研究结果的同时,能给读者提供工作思路、研究目标及认识上的观点。希望广大同行也能参预讨论,共同推进手机普及和发展继续走向成现代化。致谢三年的学习生活即将结束,三年中,在老师们的关心和指导之下,我学到了扎实的专业知识和做人的道理,在此我对老师们表示衷心的感谢。本文得以完成,特别感谢我的指导师郭树辉老师的关怀和教导。参考文献1 宋一兵、李仲、马震、FlashMX中文版教程2002.112 蔡翠平、尚俊杰网络程序设计ASP(第二版)。2004.23 清华大学出版社 FrontPage网页设计技法范例。2005.1.4 曹军生SQL Sever 2000实用教程。2004.75 中国铁道出版社 DreamweaverMX实用教程。2004.76 DreamweaverMX 实力介绍2005。2005.17 数据库综合应用2005。2004.11附件: 程序实现的代码数据链接:procedure TFormMain.FormCreate(Sender: TObject);var IniParameter: TIniFile; strPath: String;begin /读取INI文件,读ODBC的数据源 DM.InitalDatabase; /连接数据库 except Application.MessageBox('连接不上ODBC数据源,请检查ODBC数据源的完整性及提供登陆SQL Serser的信息。','错误',MB_Ok); IniParameter.Free; Application.Terminate(); end;以上代码是检验所配置的数据源ODBC时,所要的登录名与密码是否与数据源ODBC中的parameter.ini文件名一致,只有一致时才能连接数据库,否则出错。/=连接库与基本数据表=procedure TDM.InitalDatabase;begin try /初始化数据库 Application.MessageBox('连接不上ODBC数据源,请检查ODBC数据源的完整性及提供登陆SQL Serser的信息。','错误',MB_Ok); Application.Terminate(); end; try /t_Lab参数 连接手机总表 t_Lab.DatabaseName := 'LMDBName' t_Lab.TableName := 'dbo.t_Lab' t_Lab.Active := true; DS_Lab.DataSet := t_Lab; except Application.MessageBox('连接表(t_Lab)失败。','提示',MB_OK); Application.Terminate(); end; try /t_Class参数 连接手机表 t_Class.DatabaseName := 'LMDBName' t_Class.TableName := 'dbo.t_Class' t_Class.Active := true; DS_Class.DataSet := t_Class; except Application.MessageBox('连接表(t_Class)失败。','提示',MB_OK); Application.Terminate(); end; try /t_SectionClass参数 连接评测表 t_SectionClass.DatabaseName := 'LMDBName' t_SectionClass.TableName := 'dbo.t_SectionClass' t_SectionClass.Active := true; DS_SectionClass.DataSet := t_SectionClass; except Application.MessageBox('连接表(t_SectionClass)失败。','提示',MB_OK); Application.Terminate(); end; try /t_SectionClass参数 t_SectionClass连接有效日期表 t_LabClassAvail.DatabaseName := 'LMDBName' t_LabClassAvail.TableName := 'dbo.t_LabClassAvail' t_LabClassAvail.Active := true; DS_LabClassAvail.DataSet := t_LabClassAvail; except Application.MessageBox('连接表(t_LabClassAvail)失败。','提示',MB_OK); Application.Terminate(); end; try /t_MaterialName参数 t_Unit.DatabaseName := 'LMDBName' t_Unit.TableName := 'dbo.t_Unit' t_Unit.Active := true; DS_Unit.DataSet := t_Unit; except Application.MessageBox('连接表(t_Unit)失败。','提示',MB_OK); Application.Terminate(); end;end;/=有误处理= if(Text = '')then Application.MessageBox('有效开始日期项的内容,不能为空!','提示',MB_OK); StrToDatetime(Text); exceptApplication.MessageBox('有效开始日期项的内容,不是有效的日期!','提示',MB_OK);StrToDatetime(Text); except Application.MessageBox('有效截止日期项的内容,不是有效的日期!','提示',MB_OK); end; t_LabClassAvailLabClassAvail_EndDate.Value := StrToDatetime(Text);end;