南 阳 理 工 学 院
计 算 机 科 学 与 技 术 系
综合课程设计总结报告
题目: 个人网站设计
姓 名: 姚万海
学 号: 064409102
专 业: 计算机科学与技术
系 别: 计算机科学与技术
指导教师: 刘克成
起止日期: 10.11.22—11.01.14
南 阳 理 工 学 院
计 算 机 科 学 与 技 术 系
综合课程设计任务书
目录
第一章 绪 言………………………………………………………………… 2
第一节 Web页概述……………………………………………………………… 2
第二节 开发工具的选用及介绍 ………………………………………………… 3
第四节 关系型数据库的选择 …………………………………………………… 6
第二章 个人网站设计分析……………………………………………………7
第一节 相关术语及解释…………………………………………………………… 7
第二节 个人网站的由来和发展 ………………………………………………… 8
第三节 我的个人网站的设计与规划……………………………………………… 8
第三章:详细设计 ………………………………………………………………………10
第一节 数据库设计 ……………………………………………………………… 10
第二节 页面的设计 ……………………………………………………………… 13
第四章:编码、测试与维护…………………………………………………………… 28
第一节 测试与维护 …………………………………………………………… 28
第二节 设计技巧和解决方法…………………………………………………… 30
结束语…………………………………………………………………………33
参考文献………………………………………………………………………34
在已跨入21世纪的今天,人类使用和学习信息的方式以及信息的包装方式正在进行着不可阻挡的革命,这次革命将比印刷术的出现所产生的影响以及对社会发展的推动远为复杂而巨大。目前,我国上网的人口已近一个亿,成立世界上网民最多的国家,许多人在需要查询信息,首先想到的就是上网。网站的迷人之处在于综合使用文本、图象、声音、动画和视频的信息和内容,具有丰富的多媒体表现与互动特点,无可置疑, 网站已成为最吸引人的也最有效的信息传递手段和方式。随着网络技术的发展,各类网站纷纷出现。个人网站也成为了一种时尚。越来越多的人希望拥有自己的网站,开辟网络世界的一片天地,展示自己的才华和风格。
一、认识Web
Web(World Wide Web,简称WWW,又称万维网)是目前Internet上应用最广泛也是最重要的信息服务类型,它的影响已经进入了Internet上的广告、新闻、电子商务和展示信息等各个服务领域。
Web采用浏览器/服务器(B/S)工作模式,其运作模式可以描述为:请求→处理→应答。
Web以超文本标记语言HTML(Hyper Text Markup Language)与超文本传输协议HTTP(Hyper Text Transfer Protocol)为基础,通过浏览器为用户提供方便友好的信息浏览界面。
Web将位于全世界互联网上不同网址的相关信息有机地编织在一起。在Web服务方式中,信息以页面(或称Web页)的形式存储在Web服务器中,这些页面采用超文本的方式对信息进行组织,通过链接将一页信息链接到另一页信息。这些相互链接的页面既可以放置在同一台主机上,也可以放置在不同的主机上。页面到页面的链接信息由统一资源定位器URL(Uniform Resource Locator)维持。用户通过客户端应用程序(即浏览器)向Web服务器发出请求,服务器根据客户端的请求将保存在服务器中的某个页面返回给客户端,浏览器接收到页面后对其进行解释,最终将信息以图、文、声并茂的形式呈现给用户。
Web服务的特点在于高度的集成性,它能够实现不同类型的信息(如文本、图像、声音、动画和视频等)和服务(如New、FTP、Telnet、Gopher及Mail等)的无缝链接,特别适合于广域网中信息的组织、检索与显示。
二、Web技术综述
在信息技术领域中,Web技术几乎汇集了当前信息处理的所有技术手段,以求最大限度地满足人性化的特点。Web界面五颜六色,既有文字、彩图、动画、声音、视频和一些相关信息或目录摘要,还可根据需要进入你想去的任何地方。只要你愿意或是你能想到的服务,Web几乎都能实现。
Web技术涉及诸多技术领域:
(一)网络硬件技术
从两台或多台机器组成的对等网,到主机控制的以太网,再到生动活泼的因特网,每一处都需要有特定的硬件支持。1968年,当“LOGIN”的“LO”从美国加州洛杉矶分校的电脑屏幕跳到斯坦福大学的电脑屏幕上时,标志着人类首次组网的成功!组网技术经过几十年的锤炼,而今已经相当成熟了。
网络硬件技术包括很多方面,其主要的作用就是把网络中的各种资源通过相关网络连接设备连接起来,实施网络通信和达到共享网络资源的目的。
(二)Web管理技术
网络管理技术是一个永久的话题。网络管理的难点是安全性问题,涉及到防止来自内部和外部的攻击,这对管理员自身的技术是一个严峻的考验。一个合格的网管人员,除了管好网络,还得和黑客做技术上的较量。网络管理涉及的方面可谓种类繁多,简单地说,网络管理就是为保证网络系统能够持续、稳定、安全、可靠和高效地运行,不受外界干扰,而维持网络系统设施所采取的一系列方式和措施。网络管理由网管员通过驾驭网络操作系统和网络管理软件来实现。
Web管理则是在网络管理的基础上,针对网络建设和维护所进行的一系列管理。诸如架设Web服务器、文件传输服务器、邮件服务器、域名服务器、代理服务器以及用户管理和计费管理等等。
一、梦幻网页的编织者------Dreamweaver8.0
Dreamweaver是创建和管理网页的专业化可视编辑器。使用Dreamweaver可以轻松创建跨平台、跨浏览器的页面。Macromedia的Roundtrip HTML技术允许用户随意导入HTML文档而无需重新设置代码格式。
Dreamweaver可以为用户做到:使用动态HTML功能(例如具有动态效果的层和行为)而不用写一行代码。它甚至还可以检查用户的工作成果在所有流行的平台和浏览器中可能发生的错误。
Dreamweaver还是一个可以完全自定义的应用程序。用户可以创建自己的对象和命令修改菜单和快捷键,甚至编写JavaScript代码扩展Dreamweaver的行为和属性检查器。
至于Dreamweaver工作区是非常灵活的,因此它可以适应各种不同的工作风格和使用水平。常用的Dreamweaver工作区组件有以下若干种:
(一) 文档窗口可显示当前文档,文档的外观和浏览器中看到的非常相似。
(二) 装载器中包含一些打开和关闭常用检查器和模板的按钮。
(三) 对象工具栏包含创建不同类型的对象(例如图象、表格和层等)的按钮。
(四) 属性检查器显示选定对象的属性。
(五) 快捷菜单可以使用户对当前选择或区域快速执行某些命令。
(六) 可固定的浮动工具栏允许用户将浮动窗口、检查器和工具栏组合在一个或多个选择窗口中。
二、网页动画的制作软件----Micromedia Flash 8.0
Micromedia Flash 8.0用于web站点的交互式的矢量图形和动画的制作,它可制作出
用于浏览时的导航控制、制作动画图标、带同步声音的大段的动画,创建出生动的富于表现力的网页。Flash中的图形都是矢量的,占据存储空间较少,因而下载时间短,且能很好地适应浏览者不同尺寸的屏幕。
Flash 的交互性的大部分设置就在 Action 和 Fs Command 里,通过对 Action 和 Fs Command 的设置,你可以随意的设置各事件发生的效果,还有对变量及函数的设置。
三、JavaScript
JavaSript是一种基于对象(Object)和事件驱动(Event Driven)并具有安全性能的脚本语言。使用它的目的是与HTML超文本标记语言、Java 脚本语言(Java小程序)一起实现在一个Web页面中链接多个对象,与Web客户交互作用。从而可以开发客户端的应用程序等。它是通过嵌入或调入在标准的HTML语言中实现的。它的出现弥补了HTML语言的缺陷,它是Java与HTML折衷的选择。
四、影像与动画的制作软件—Adobe Photoshop8.0
Photoshop 8.0是目前最流行的图形、图像编辑设计软件,在数码影像处理、图像编辑合成、广告设计、封面设计、美术绘画、网页设计等领域都被广泛地应用。
(一) 文字处理更加方便
(二) 增加的图层集使图层管理更有序。
(三) 新增图像功能:图像的剪切和剪裁更加方便。
(四) 将所有工具的选项板改进为工具选项栏放置在工作区顶部,方便先项参数的设置。
(五) 为了更方便地用路径绘画,改进增加了几何形状工具,通过选择工具的不同工作模式,可创建路径、几何形状或几何填充区,使得矢量绘图功能得到了加强。
五、动态网站的脚本语言--ASP
Active Server Pages:“动态服务器网页”,一般简称为“ASP”,ASP之所以能受到大家的重视与使用的原因,主要在于所产生的执行结果都是标准的HTML格式,而且这些程序是在网络服务端中执行,使用一般的浏览器(如IE 或Netscape)都可以正确地获得ASP的“执行”结果,并且将这ASP执行的结果直接在浏览器中“浏览”,不像VBScript或 JavaScript是在客户端(Client)的浏览器上执行,若使用VBScript来设计程序,客户端(Client)在IE浏览器中可以显示程序执行的结果,可是,客户端(Client)若使用Netscape浏览器就无法显示VBScript的执行结果。
(一)、ASP的特点:
1、任何开发工具皆可发展ASP
只要使用一般的文书编辑程序,如Windows记事本,就可以编辑。当然,其他网页发展工具,例如,FrontPage Express、 FrontPage等也都可以;不过还是建议你用记事本来写,既省钱又方便,若是使用那些所见即所得的网页编辑来写ASP,可能会发生一些意想不到的离奇状态。
通过各家浏览由于ASP程序是在网络服务器端中执行,执行结果所产生的HTML文件适用于不同的浏览器。
2、语言相容性高
ASP与所有的ActiveX Script语言都相容,除了可结合HTML,VBScript、Java ScriptActive X服务器组件来设计外,并可经由“plug-In(外挂组件模组)的方式,使用其他厂商(Third Party)所提供的语言。
3、隐密安全性高
如果我们在浏览器中直接查看网页的原始代码,就只能看到HTML文件,原始的ASP程序代码是看不到的!这是因杰ASP程序先于网站服务(Web Server)端执行后,将结果转换成标准HTML文件,再传送到客户端(Client)的浏览器上,因此,我们所辛苦撰写的ASP程序并不会轻易地被看见进而被盗用。
4、易于操控数据库
ASP可以轻易地通过ODBC(Open Database Connectivity)驱动程序连接各种不同的数据库,例如:Acess、Foxpro、dBase、Oracle等等,另外,ASP亦可将“文本文件”或是”Excel” 文件当成数据库用。
5、面向对象学习容易
ASP具备有面向对象(Object-Oriented)功能,学习容易,ASP提供了五种方便能力强大的内建对象:Request、Response、Sever、Application以及Session,同时,若使用ASP内建的“Application”对象或”Session”对象所撰写出来的ASP程序可以在多个网页之间暂时保存必要的信息。
6、ASP的六大内部对象
对象名称 功能描述
RequestResponseServerSessionApplicationObjectContext 从客户端取得信息将信息送给客户端提供一些Web服务器工具储存在一个
Session内的用户信息,该信息仅可被该用户访问在一个
ASP-Application中让不同的客户端共享信息可以用来配合
Microsoft Transaction 服务器进行分布式事务处理
所以我选择了ASP结合Dreamweaver架构个人站点。
一、Access
Microsoft Access是一种桌面数据库,只适合数据量少的应用,在处理少量数据和单机访问的数据库时是很好的,效率也很高。但是它的同时访问客户端不能多于4个。Microsoft Access数据库有一定的极限,如果数据达到100M左右,很容易造成服务器iis假死,或者消耗掉服务器的内存导致服务器崩溃。
二、SQL Server
Microsoft SQL Server是基于服务器端的中型的数据库,可以适合大容量数据的应用,在功能上管理上也要比Microsoft Access要强得多。在处理海量数据的效率,后台开发的灵活性,可扩展性等方面强大。因为现在数据库都使用标准的SQL语言对数据库进行管理,所以如果是标准SQL语言,两者基本上都可以通用的。Microsoft SQL Server还有更多的扩展,可以用存储过程,数据库大小无极限限制。
本站属于个人站点采用Access数据库就行了。
一、Internet
Internet(英特网)诞生于上世纪60年代,发展非常慢,到90年代才开始迅速发展。现在英特网已经是世界上最大的网络的,联在英特网上的电脑有数亿台。上面的资料、信息数不胜数,所以有人把英特网叫成是信息的海洋、知识的海洋。
二、站点
所谓站点,就是将网页文件和素材文件,有条理地放置站点文件夹里,这些文件与文件夹就构成了网站的实质内容。站点文件夹里除了网页文件还有素材文件,所谓素材就是网页中所用到的图像、声音、视频等,这些内容是以单独文件的形式存在。
三、超链接
我们在浏览网页时,当鼠标指针指向某段文本或是某个图像,鼠标指针变成小手状,单击鼠标可以打开其他的网页或是跳转到其他的网站,这就是超链接。采用超链接技术可以将不同的网站、网站中的不同网页、网页中的不同位置彼此串在一起,实现相互间的跳转,方便信息的浏览和查找。人们通过超链接可以很方便很迅速地访问分布于全球计算机上的海量资源,实现在互联网中的漫游。超链接能使Web服务存在广泛和持久的生命力,超链接可以说是Web的灵魂。
四、URL
URL(Uniform Resource Locator的缩写),统一资源定位器。互联网中某种信息资源以某种方式存储在网络中的某处,必须用一个惟一的URL来进行标识,这样才能方便查找。对于Web来说,可以简单并通俗把URL理解为网址。每个Web网页都有自己的网址,在浏览器地址栏里输入网页的URL,就可以访问这个网页。例如,http://www.sina.com/index.html,其意思就是采用http超文本传输协议访问新浪网的首页,由于网页均是通过http超文本传输协议进行访问,默认下,“http://”可以省略不输。
五、IP地址
为了使互联网上的电脑主机在通信时能够相互识别,每台主机都分配一个能表示其位置的IP(Internet Protocol)地址,这如同公用电话网中电话的号码一样。IP地址是由专门的互联网机构来分配。IP地址具有惟一性,是由32位二进制数组成,分为四组,每组8位,每组之间用小数点分隔,在实际之中常转换成十进制数表示。
互联网在中国的出现只有短短七年时间,1994年中国科学院高能物理研究所设立了国内第一个Web服务器,推出一个叫做“中国之窗”的网页,这可能是国内Internet上出现的第一个Web网页,1995年开始,中国教育科研网,中国科技网,中国公用计算机互联网以及中国金桥网这构成中国数字神经系统的四大互联网络相继建成,使互联网在中国开始真正进入社会生活之中。
这时期,个人网站出现的条件还很不成熟,国内上网的人数很少,也缺乏支持个人建站的环境,用户很难找到理想的个人主页存放地。
个人网站发展的第二阶段是从1997年初到1998年,这段时间,中国网民数量飞速增长,个人网站日渐繁荣,个人主页的数量急剧增加。同时,越来越多的商业网站开始免费提供个人主页空间,这些良好的外部极大地促进了个人网站的发展,涌现了一批很著名的个人网页,从1998年下半年开始,随着互联网应用的深入的普及,随着众多主页制作工具的出现,使得建站成为一件非常容易的事,创建一个能充分体现自我风格和特色的个人网站已经成为互联网用户的新追求。
第三节 我的个人网站的设计与规划
一、明确架设网站的目的及客户要求
通常情况下,架设个人网站主要是为了通过互联网表达个人在商业、科技、交际、生活等方面的信息需求或者进行信息的交流,具有较强的目的性,我的个人网站一般体现在:为了展示自己的风采,让大家和我一起分享我的心得与经验,让和我有共同爱好的朋友有一个倾诉的地方。
二、我的个人网站概貌
因为是个人网站,所以只是选择了自己擅长和喜爱的内容,在突出自己的风格和特点的同时,还应用了现在流行的网站设计技术和数据库技术。因此将网站设计分为前台页面展示平台和后台在线管理平台。
三、功能划分
网站设计有新闻更新,浏览者可以在首页浏览自己喜欢的新闻,并且可以在留言板和大家交流,在后台管理页面中,通过身份认证,管理员——我,可以对网站信息进行管理。站内的其它页面均是我自己的精心收藏,与大家一起分享。
四、功能描述
(一)新闻
嵌入百度新闻每日更新代码,使用在本站首页显示今日国内国际新闻和体育新闻,供浏览者浏览。
(二)留言板
是一个我与大家谈心交流的地方,在留言板中,我们可以畅所欲言,和大家进行交流。就我们感兴趣的话题展开讨论。和大家进行沟通。
(三)后台管理页面
是我管理和添加到新内容的地方,为了方便实现信息的经常更新,我设计了这个管理页面,经过身份认证后我可以进入网站对其中的信息进行管理。
(四)日记
在其中展示我喜爱的东西,包括我的日记、精品文章、社会文化和一些杂七杂八的文章。奇文共欣赏,疑义相与析。我只想起到抛砖引玉的作用,让大家从中认识我和了解我,让一些美好的东西我们大家共同来欣赏。
(五)相册
在其中展示漂亮的图片,包括我的照片、我的同学、风景照片、妹眉帅哥栏木。让大家一起来欣赏人物、风景风采。
(六)音乐
在其中展示个人喜欢的歌曲,朋友们可以在里面点播自己喜欢的歌。
(七)页面组织和数据库设计
在明确了我的个人网站的风格和定位后,就是网站的材料组织以及网站的页面设计和数据库设计。
建立一个网站好比写一篇文章,首先要拟好提纲,文章才能主题明确,层次清晰。如果网站结构不清晰,目录庞杂,内容东一块西一块。结果不但浏览者看得糊涂,自己扩充和维护网站也相当困难。网站的题材确定后,并且收集和组织了许多相关的资料内容,但如何组织内容才能吸引网友们来浏览网站呢?栏目的实质是一个网站的大纲索引,索引应该将网站的主体明确显示出来。因此我将自己的个人网站分为五个栏目,分别是关于我、相册、日记、音乐、留言。
第三章详细设计
一、数据库搭建
使用Access2000 实现关系型数据库
(一) 用户密码登记表Admin
存储了系统用户和普通用户的信息,包括:姓名,口令,验证码,名称。它的设计视图如图1:
图1
(二) 留言基本档案表Book
存储了用户的档案包括:ID,留言者名字、留言者QQ、留言者E-mail,留言内容,留言者主页,留言时间,回复留言,留言头像,留言表情,留言者IP,留言者地址,留言主题,其中ID为该表的主关键字。它的设计视图如图2:
图2
(三) 歌曲基本信息表 HN_down,如图3:
图3
(四) 音乐分类表 HN_downcla,如图4:
图4
(五) 日记基本信息表 HN_news,如图5:
图5
(六) 日记分类表 HN_newscla,如图6:
图6
(七) 图片基本信息表 HN_pro,如图7:
图7
(八) 相册分类表 HN_procla,如图8:
图8
(九)网站基本信息表 WebBasicInfo,如图9:
图9
以上数据表为Access类型的库文件,将它定名为:“data.mdb”。
二、连接数据库
在上面,我们已经为我们的程序创建了一个数据库,在这里,我们来用ASP把程序和数据库连接起来,以后就可以连接到数据库、在ASP中显示数据库中的数据以及更复杂的插入、修改和删除。
一起看以下代码,这就是ASP程序中常用的连接数据库的代码:
<% '这是ASP程序的起始
set conn=server.createobject("adodb.connection") '在服务器上创建了一个连接数据库的对象
connstr="Provider=Microsoft.jet.oledb.4.0;data source="&server.mappath("data.mdb") '告诉ASP数据库的接接方法以及路径
conn.open connstr '创建了对象后就用来打开数据库进行连接
%> '一切OK了!结束ASP程序
第二节 页面设计
一、界面设计
(一)相册
是一个个人相片和精彩图片展示的地方,在相册中,我们可以了解到站长的个人风采和自己喜欢的图片。
1、功能
利用ASP对象语句显示图片,让大家可以看见所有图片的缩略图,同时每个图片都有快照功能,可以浏览图片的全图。
2、组成构造
相册结果显示页面 photo.asp:用来显示所有图片,同时还具备图片的分类功能和图片单个浏览功能。
站长基本信息显示页面 include.asp:
数据库连接页面 conn.asp
3、相册页面浏览效果图,如图10:
图10
4、图片效果浏览图,如图11:
图11
(二)日记
是一个记录个人日记和精品收藏文章的地方,供给大家一起分享。
1、功能
利用ASP对象语句分类显示日记或文章记录,让大家浏览到最新的日记或文章
2、组成结构
日记或文章显示页面 diary.asp:显示所有日记或文章,同时还具备显示不同子类日记或文章
站长基本信息显示页面 include.asp
数据库连接页面 conn.asp
3、日记页面浏览效果图,如图12。
(三)、音乐
是一个音乐收藏和音乐欣赏的地方。
1、功能
利用ASP对象语句来显示歌曲曲目、演唱人和在线播放功能。
2、组成结构
歌曲显示播放页面 media.asp:完成曲目的显示和播放功能的页面。
站长基本信息显示页面 include.asp
数据库连接页面 conn.asp
图12
3、音乐页面浏览效果图,如图13。
图13
(四)、留言本
是一个我与大家谈心交流的地方,在留言板中,我们可以畅所欲言,和大家进行交流。就我们感兴趣的话题展开讨论。和大家进行沟通。
1、功能
利用SQL语法过滤特定的用户留言意见,让站长可以针对某位特定用户所发表的意见作出独立的回答,同时,用户在发表个人意见时,若认为意见内容涉及敏感的话题或是意见内容涉及私人隐私,都可用“悄悄话”的方式发言,这些“悄悄话”将不会被显示出来让大家看到,当然,站长拥有管理的能力,只要以密码登录管理模式,就可以进行各个用户的单独意见回复,而且还能看到用户所留下的“悄悄话
2、组成构造
意见留言结果网页gbook.asp:用来显示用户发言与站长回复内容,同时还具备查看留言和发表留言两个功能。
站长基本信息显示页面 include.asp
数据库连接页面 conn.asp
3、留言页面浏览效果图,如图14。
图14
4、发表留言浏览效果图,如图15。
图15
二、关键代码设计
(一) 页面相同基本信息代码页面 include.asp
<%
set oRs=server.createobject("adodb.recordset")
sSql="Select Top 1 * From WebBasicInfo"
oRs.Open sSql,Conn,1,1
If Not oRs.Eof Then
W_ID=oRs("W_ID")
W_WebsiteAppe=oRs("W_WebsiteAppe")
W_SuppExpl=oRs("W_SuppExpl")
W_WebSiteName=oRs("W_WebSiteName")
W_WebSiteUrl=oRs("W_WebSiteUrl")
W_StatMastName=oRs("W_StatMastName")
W_StatMastEmail=oRs("W_StatMastEmail")
W_StatMastQQ=oRs("W_StatMastQQ")
W_WebSiteKeyword=oRs("W_WebSiteKeyword")
W_WebSiteIntr=oRs("W_WebSiteIntr")
W_WebSiteCopyInfo=oRs("W_WebSiteCopyInfo")
End If
oRs.Close
If W_WebsiteAppe="False" Then
Response.Write "<table width='100%' height='100%' border='0' cellpadding='0' cellspacing='0'><tr><td style='font-size:11pt'><div align='center'><font color='#ff0000'>"
Response.Write W_SuppExpl
Response.Write "</font></div></td></tr></table>"
Response.End
End If
Dim WebTitle,WebName
WebName=W_WebSiteName&"-"&W_WebSiteUrl
WebTitle=""
%>
(二)数据库连接代码页面 conn.asp
<%
Function SafeRequest(ParaName,ParaType)
Dim ParaValue
ParaValue=Request(ParaName)
If ParaType=1 then
If not isNumeric(ParaValue) then
Response.write "<center>参数" & ParaName & "必须为数字型,请正确操作!</center>"
Response.end
End if
Else
ParaValue=replace(ParaValue,"'","''")
End if
SafeRequest=ParaValue
End function
Function FormatSQL(strChar)
if IsNull(strChar) Or IsEmpty(strChar) then
FormatSQL=""
else
FormatSQL=replace(strChar,"'","’")
FormatSQL=replace(FormatSQL,"*","×")
FormatSQL=replace(FormatSQL,"?","?")
FormatSQL=replace(FormatSQL,"(","(")
FormatSQL=replace(FormatSQL,")",")")
FormatSQL=replace(FormatSQL,"<","﹤")
FormatSQL=replace(FormatSQL,">","﹥")
FormatSQL=replace(FormatSQL,".","。")
FormatSQL=replace(FormatSQL,";",";")
FormatSQL=replace(FormatSQL,"=","=")
FormatSQL=replace(FormatSQL,"%","%")
FormatSQL=replace(FormatSQL,"&","※")
end if
End Function
dim conn
dim connstr
db="Database/data.mdb"
connstr = "DBQ=" + server.mappath(db) + ";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
set conn=server.createobject("ADODB.CONNECTION")
if err.number<>0 then
err.clear
set conn=nothing
response.write "数据库连接出错!"
Response.End
else
conn.open connstr
if err then
err.clear
set conn=nothing
response.write "数据库连接出错!"
Response.End
end if
end if
%>
(三)分页功能模块代码
<!-- 分页功能代码块,可独立使用 -->
<%
if not rs.eof then
rs.MoveFirst '注意放到前面来,否则到任何页总是在第一个记录上
end if
rs.pagesize=MaxPerPage '设置每页最多显示多少条记录
If trim(Request("Page"))<>"" then '如果请求的页次不为空
CurrentPage= CLng(request("Page")) 'clng是转换成长整型数据类型,并赋值到当前页次上
If CurrentPage> rs.PageCount then '如果当前页次大于总页数,则将最大页次赋值到当前页次上
CurrentPage = rs.PageCount
End If
Else
CurrentPage= 1 '一切条件不成立,将当前页设为第一页
End If
totalPut=rs.recordcount '将总记录赋值于TOTALPUT
if CurrentPage<>1 then '如果当前页数不等于第一页
if (currentPage-1)*MaxPerPage<totalPut then '如果当前页减一乘以每页最大的记录数小于总记录的话
rs.move(currentPage-1)*MaxPerPage '相对当前记录数向后移动
dim bookmark '定义书签变量
bookmark=rs.bookmark '将当前记录的标签赋于变量BOOKMARK上
end if
end if
dim n,k
if (totalPut mod MaxPerPage)=0 then '总记录数与每页最大记录数求余的结果为零时,则N返回整数页次,否则再加一.
n= totalPut \ MaxPerPage
else
n= totalPut \ MaxPerPage + 1
end if
%>
(四)图片显示功能模块代码
<table border="0" cellspacing="0" cellpadding="0">
<%
cid=request("id")
if cid="" then
sql="select * from HN_pro order by id desc"
else
sql="select * from HN_pro where cstr(class)='"&cid&"' order by id desc"
end if
set rsnews=server.createobject("adodb.recordset")
rsnews.open sql,conn,1,1
if rsnews.eof then
Response.Write "</td></tr></table>"
end if
IF Not rsnews.eof Then
proCount=rsnews.recordcount
rsnews.PageSize=24 '定义显示数目
if not IsEmpty(Request("ToPage")) then
ToPage=CInt(Request("ToPage"))
if ToPage>rsnews.PageCount then
rsnews.AbsolutePage=rsnews.PageCount
intCurPage=rsnews.PageCount
elseif ToPage<=0 then
rsnews.AbsolutePage=1
intCurPage=1
else
rsnews.AbsolutePage=ToPage
intCurPage=ToPage
end if
else
rsnews.AbsolutePage=1
intCurPage=1
end if
intCurPage=CInt(intCurPage)
k=1
do while Not rsnews.eof and k<6
%>
<tr>
<%for n=1 to 6%>
<td><table width="69" height="68" border="0" cellpadding="0" cellspacing="0" align="center">
<tr>
<td><a href="<%=rsnews("come")%>" rel="lightbox[plants]"> <img src="<%=rsnews("come")%>" width="49" height="49" border="0"></a></td>
</tr>
</table></td>
<%
rsnews.MoveNext
if rsnews.eof then exit for
if rsnews.eof then exit do
next
%>
</tr>
<%k=k+1
Loop
%>
</table>
日记、音乐显示模块代码段相似。
(五)歌曲播放列表 playlist.asp
<%
songid=FormatSQL(SafeRequest("songid",1))
if songid="" then
response.Write "错误!"
response.end
end if
set rs=Server.CreateObject("ADODB.Recordset")
sql="select * from HN_down where id="&songid
rs.open sql,conn,1,3
if songid=""&rs("id")&"" then
response.Write ""&rs("come")&""
response.end
end if
%>
(六)发表留言提交内容判断模块代码
<%
if request("action")="" then response.redirect"gbook.asp?action=show"
if request("action")="post" then
dim bookname
dim bookwhere
dim bookpic
dim bookface
dim bookcontent
dim booktime
dim bookip
dim FoundErr,ErrMsg
bookname=request("name")
bookwhere=request("where")
bookpic=request("pic")
bookface=request("face")
bookshow=request("show")
bookcontent=request("content")
bookip=request.ServerVariables("REMOTE_ADDR")
if bookname="" then
Response.Write "<SCRIPT LANGUAGE='JavaScript'>"
Response.Write "alert('留言昵称不能为空!');"
Response.Write "history.go(-1);"
Response.Write "</SCRIPT>"
Response.End
end if
if bookcontent="" then
Response.Write "<SCRIPT LANGUAGE='JavaScript'>"
Response.Write "alert('留言内容不能为空!');"
Response.Write "history.go(-1);"
Response.Write "</SCRIPT>"
Response.End
end if
strArr=split(W_BookWorryNeed,"|")
set rs=Server.CreateObject("ADODB.Recordset")
sql="select * from book"
rs.open sql,conn,1,3
rs.addnew
rs("name")=htmlencode(bookname)
rs("where")=htmlencode(bookwhere)
rs("pic")=bookpic
rs("face")="images/face/"&bookface&".gif"
rs("show")=bookshow
rs("content")=htmlencode(bookcontent)
rs("ip")=bookip
rs("time")=now()
rs.update
rs.close
Response.Write "<SCRIPT LANGUAGE='JavaScript'>"
Response.Write "alert('恭喜您!您已经成功提交了信息!');"
Response.Write "window.location.href='gbook.asp?i=show'"
Response.Write "</SCRIPT>"
Response.end
end if
%>
三、网站管理系统
(一)完成站长对网站信息管理及更新的系统,包括以下几部分:
1、管理登陆页面Index.asp
2、相册管理页面Admin_pro.asp
3、日记管理页面Admin_new.asp
4、音乐管理页面Admin_down.asp
5、留言管理页面GuestBook.asp
(一) 管理登陆
管理系统的登陆页面,主要用于管理登陆和判断用户是否已注册。
1、其中判断是否是非法登陆的代码为:
<%
admin_pass=md5(admin_pass)
set rs=server.createobject("adodb.recordset")
sql="select * from admin where admin_name='"&admin_name&"' and admin_pass='"&admin_pass&"'"
rs.open sql,conn,1,3
if rs.eof then
response.write"<SCRIPT language=JavaScript>alert('用户或密码错误!非管理员勿入!');"
response.write"location.href='index.asp'</SCRIPT>"
else
session("admin_name")=request("admin_name")
session("loc")=1
response.redirect "admin.asp"
end if
rs.close
set rs=nothing
conn.close
set conn=nothing
end if
end if
%>
2、 其中验证码验证代码:
<%
dim verifycode,verifycode2
verifycode=trim(Request.Form("verifycode"))
verifycode2=trim(Request.Form("verifycode2"))
if verifycode<>verifycode2 then
response.write"<SCRIPT language=JavaScript>alert('您输入的验证码不正确!');"
response.write"location.href='index.asp'</SCRIPT>"
founderr=true
else
session("verifycode")=""
%>
(三)主要功能程序段
1、打开数据库
<%
set conn = Server.CreateObject("ADODB.Connection")
conn.open "YourDSNName","username","password"
%>
2数据库查询操作
大类查讯
setrs=server.CreateObject(adodb.recordset)
只读方式打开
rs.openselectanclass,anclassidfromanclass,conn,1,1
dowhilenotrs.eof
response.writeAhref=javascriptturnX('r&rs(anclassidtarget=_blank)&')
&trim(rs(anclass))&A
rs.movenext
loop
rs.close
小类查询
dimrs2
setrs2=server.CreateObject(adodb.recordset)
rs2.openselectnclass,nclassidfromnclasswhereanclassid=&rs(anclassid)&orderbynclassidorder,conn,1,1
dowhilenotrs2.eof
response.writeAhref=class.aspaid=&rs(anclassid)&&nid=&rs2(nclassid)&&trim(rs2(nclass))&A
rs2.movenext
loop
3、添加记录操作
setrs=server.CreateObject(adodb.recordset)
可写方式
rs.openselectbookid,username,zhuangtai,zongerfromactions,conn,1,3
rs.addnew 添加一条新记录
rs(bookid)=bookid 添加相应的记录
rs(username)=username
…………
rs(zhuangtai)=6
rs(zonger)=0
rs.update 更新数据库
4、删除记录操作
从表actions中删除actionid匹配的记录 conn.executedeletefromactionswhereactionid=
&request.QueryString(actionid)
5、记录的修改和查看
setrs=server.CreateObject(adodb.recordset)
rs.Openselectfrombookswherebookid=&bookid,conn,1,3
rs(anclassid)=int(request(anclassid))修改各项记录
………………
rs.Update
rs.Close
第四章编码、测试与维护
第一节测试与维护
一、IIS(Internet 信息服务)安装配置
可以在"添加或删除程序 >>添加/删除Windows组件"对话框中把"Internet 信息服务(IIS)"前的勾选中,点"下一步"进行安装就行了(注:在这之前应把系统安装盘放到光驱)。 IIS 装好之后再作一下简单的配置。定位到"开始>>管理工具>>Internet 信息服务(IIS)管理器",打开IIS管理器。在"本地计算机>>网站>>默认网站"上右键单击,在快捷菜单里选"属性"(或者直接在操作菜单下选"属性"),弹出如下对话框图16:
图16
切换到"主目录"标签(图2),重新选择网站根目录(我选择的是E盘下的my web目录),默认是"系统盘:\Inetpub\wwwroot",因为系统盘不宜放太多的非系统文件,所以在这里重设默认网站要目录,如果嫌麻烦可以跳过这步。再切换到"文档"标签,通过"添加"、"删除"、"上移"、"下移 ",把站点的默认文档设置如图17:
图17
可能有些朋友会疑惑,设置默认内容文档有什么作用?细心的朋友应该会发现,在浏览一些大网站的首页时用它的一级域名就行了,并不需要指定请求页的文件名,这就是设置了默认内容文档的缘故,它的作用就是在浏览器请求没有指定文档的名称时,将默认文档提供给浏览器。要得到更详尽的解释说明,可以点击图3中的“帮助”。之所以有这步,是因为网站的默认内容页中没有index.asp,不大符合国人习惯。
二、Dream weaver测试站点和用IIS测试本地站点
Dream weaver MX提供了全面检测站点的功能,它比检测链接更全面。全面地检测内部、外部链接、去除错标签、空标签、多余的标签等,它的使用相当简单,使用全面检测站点功能如下:
1、选择菜单中【站点】的【报告】命令,打开一个窗口。
2、选择检测范围,在【报告】选项中有四个内容供选择:Current Document、Entire Local Site、Select Files in site、Folder。
3、对工作流方面的信息进行检测。
4、对HTML文件的信息做出检查。
把编好的网站文件复制到D:/my web文件夹中,可以打开浏览器,在地址栏中输入http://localhost/my web/index.asp ,就会看见网站了。
三、维护
网站建成后并不意味着网站建设的结束,网站内容需要不断更新,这样才会不断的吸引更多的浏览者访问,才能成为一个优秀的网站。通过FTP软件将更新过的网页上传到服务器或通过Dream weaver MX来远程管理站点,同时还要认真回复浏览者的电子邮件和留言,做到有问比答。平时多收集资料,多听听别人建议,定期更新版面,还有推广站点。
第二节 设计技巧和解决方法
一、用服务器端包含技术实现对文件的引用
系统中有许多页面都会引用相同的代码文件,所以使用include语句将已完成代码的文件包含进来,就可以简化代码的缩写。如首页面indes.asp中第二行和第三行代码。
<!--#include file="conn.asp"-->
<!--#include file="include.asp"-->
经过老师耐心细致的指导,及同学之间的相互交流,同时翻阅了大量的资料(包括网上资料,书本及学校的一些相关资料)经过近一段时间的努力,个人网站的设计制作告一段落。总结这次“个人网站”开发制作过程,我们综合使用了目前因特网上比较流行的各种静态制作方法及交互式动态网站的制作设计手段,并对初步利用后台程序完成了网站的动态响应与生成网页的技术。同时也从中学习了对静态页面的处理风格,色彩搭配,页面导航方面有了一定经验。对用Javascript语言制作动态效果也有了更进一步的认识。在交互式网页设计学会了如何使用Access建立数据库,以及对数据库浏览,修改,添加,查询。如何用ASP编写程序来方便用户在网上查看网站各方面的信息和交流。
目前网站的制作技术与要求,都已经告别了因特网初期网站制作的“幼稚”期,随着各类网站的迅速增加与浏览者需求的提高,无不要求网站从立意,策划,页面设计到后台程序的全面提高。无论是个人网站还是企业网站都必须被要求从浏览者角度出发,最大限度的满足用户的要求,这也是以后各类网站发展竞争的真正实质所在。
本次设计由于设计时间较紧,且相关模块比较多,加之设计经验的不足,在网站的整体设计及各模块功能可能设计的不完全,有待于进一步的完善和改进。
[1]吴涛主编,网站全程设计技术(修订本),北京:清华大学出版社;北京交通大学出版社,2006.7
[2]龙马工作室编,ASP+SQL Server组建动态网站实例精讲,北京:人民邮电出版社,2004.8
[3] 赵增敏编,ASP动态网页设计,电子工业出版社,2003.8
[4]任学文、范严编, 网页设计与制作,中国科学技术出版社,2006.8
[5] 武创、王惠,网页设计探索之旅 ,电子工业出版社,2006.9
[6] 杜巧玲等编,网页设计超级梦幻组合,清华大学出版社, 2003.3
[7]吴黎兵、罗云芳编,网页设计教程, 武汉大学出版社,2006.2
[8]庄王健编,网页设计三剑客白金教程,电子工业出版社,2006.01
综合课程设计考核表
计算机专业实习报告范文一暑假已经结束我在xxxxxxxxxx的实习也划上了一个完美的句号第一次感觉到暑假过得这么的快也是第一次感觉…
[实习目的]通过理论联系实际,巩固所学的知识,提高处理实际问题的能力,了解设计专题的主要内容,为毕业设计的顺利进行做好充分的准备,…
今年暑假我来到了上海酷扬计算机科技有限公司售后服务部实习,短短1个月的工作过程使我受益匪浅。不仅计算机专业知识增长了,最主要是懂得…
计算机专业实习报告范文一暑假已经结束我在xxxxxxxxxx的实习也划上了一个完美的句号第一次感觉到暑假过得这么的快也是第一次感觉…
实习目的:通过理论联系实际,巩固所学的知识,提高处理实际问题的能力,了解设计专题的主要内容,为毕业设计的顺利进行做好充分的准备,并…
C语言程序设计实训总结为加强学生的实践动手能力,为贯彻落实教学计划的要求,培养学生的专业实践技能,计算机系05级计算机网络工程与管…
C语言程序设计实训总结李爱强通过此次实训,同学们能够利用C语言面向过程的编程思想来完成系统的设计,熟练掌握C语言的基本知识和技能;…
设计题目及要求设计题目及要求设计题目及要求设计题目及要求1.综合应用实例——学生成绩管理编写一个菜单驱动的学生成绩管理程序。实现如…
实训总结转眼间为期2周的数控加工与编程实训已经结束了,经过2周的实训让我学到了许多知识,回想实训这几天我确实有很大的收获。在指导老…
河北科技师范学院欧美学院实习类型教学实习实习单位河北科技师范学院欧美学院实习起止时间年月年日指导教师刘正林所在院(系)信息技术系专…