文档在线提供.docx
《文档在线提供.docx》由会员分享,可在线阅读,更多相关《文档在线提供.docx(19页珍藏版)》请在冰豆网上搜索。
文档在线提供
个人网站设计文档
毕
业
设
计
网
站
姓名浅夜天蝎
日期:
2006年5月
摘要
个人网站的制作,其意义在于通过互联网建立属于自己的网站平台,提供一个推荐和展示自我的途径。
个人网站的特点是突出的页面风格,个性化的功能模块,如:
留言板、日志、相册等等,正是这些个性化的元素,让浏览者了解个人的性格、特点、喜好等等,并可对作者发表的文章观点提供交流与学习的平台。
正是由于个人网站的不断发展,才让人与人之间的交流、认识、熟悉、找工作变得更加简单。
引言
在Internet飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。
Internet上发布信息主要是通过网站来实现的,获取信息也是要在Internet“海洋”中按照一定的检索方式将所需要的信息从网站上下载下来。
因此网站建设在Internet应用上的地位显而易见,它已成为政府、企事业单位信息化建设中的重要组成部分,从而倍受人们的重视。
第一章概述
1.1设计思想
通过网站,宣传展示个人风采、优点与特色,发布个人的感兴趣的文章,增强自己的社会竞争力,在Internet上实现完成部分发布操作,提高效率。
1.2开发工具的选用及介绍
ASP的优势:
ActiveServerPages:
“动态服务器网页”,一般简称为“ASP”,ASP之所以能受到大家的重视与使用的原因,主要在于所产生的执行结果都是标准的HTML格式,而且这些程序是在网络服务端中执行,使用一般的浏览器(如IE或Netscape)都可以正确地获得ASP的“执行”结果,并且将这ASP执行的结果直接在浏览器中“浏览”,不像VBScript或JavaScript是在客户端(Client)的浏览器上执行,若使用VBScript来设计程序,客户端(Client)在IE浏览器中可以显示程序执行的结果,可是,客户端(Client)若使用Netscape浏览器就无法显示VBScript的执行结果。
ASP的特点:
任何开发工具皆可发展ASP
只要使用一般的文书编辑程序,如Windows记事本,就可以编辑。
当然,其他网页发展工具,例如,FrontPageExpress、Dreamweaver等也都可以;不过还是建议你用记事本来写,既省钱又方便,若是使用那些所见即所得的网页编辑来写ASP,可能会发生一些意想不到的离奇状态。
通吃各家浏览由于ASP程序是在网络服务器端中执行,执行结果所产生的HTML文件适用于不同的浏览器。
语言相容性高
ASP与所有的ActiveXScript语言都相容,除了可结合HTML,VBScript、JavaScript、ActiveX服务器组件来设计外,并可经由“plug-In(外挂组件模组)的方式,使用其他厂商(ThirdParty)所提供的语言。
隐密安全性高
如果我们在浏览器中直接查看网页的原始代码,就只能看到HTML文件,原始的ASP程序代码是看不到的!
这是因杰ASP程序先于网站服务(WebServer)端执行后,将结果转换成标准HTML文件,再传送到客户端(Client)的浏览器上,因此,我们所辛苦撰写的ASP程序并不会轻易地被看见进而被盗用。
易于操控数据库
ASP可以轻易地通过ODBC(OpenDatabaseConnectivity)驱动程序连接各种不同的数据库,例如:
Acess、Foxpro、dBase、Oracle等等,另外,ASP亦可将“文本文件”或是”Excel”文件当成数据库用。
面向对象学习容易
ASP具备有面向对象(Object-Oriented)功能,学习容易,ASP提供了五种方便能力强大的内建对象:
Request、Response、Sever、Application以及Session,同时,若使用ASP内建的“Application”对象或”Session”对象所撰写出来的ASP程序可以在多个网页之间暂时保存必要的信息。
ASP的六大内部对象
对象名称功能描述
Request、Response、Server、Session、Application、ObjectContext从客户端取得信息将信息送给客户端提供一些Web服务器工具储存在一个Session内的用户信息,该信息仅可被该用户访问在一个ASP-Application中让不同的客户端共享信息可以用来配合MicrosoftTransaction服务器进行分布式事务处理
.
所以我选择了ASP结合Dreamweaver架构[网站毕业设计]个人网站,开发工具还有Photoshop,Flash两个比较重要的软件!
第二章网站总体分析与设计
2.1网站系统分析
根据前面的设计思想进行分析,按照系统开发的基本观点对网站进行分解,从内容上可对网站作如下划分(大体):
首页:
通过漂亮的背景页面,动态文章和图片,展示主题风格。
动漫:
FLASH动画。
散文:
浏览文章。
音乐:
可以收听音乐。
相册:
浏览图片。
连接:
友情连接。
关于:
自我介绍。
后台管理:
新增、删除、所有的文章管理。
系统的功能及要求
整个网站的各个菜单栏目的结构图(细致):
频道一
个人世界
我的简历
基本情况、求职意向、工作经历、自荐书
我的作品
职业中介管理系统
我的像册
网络图片
我的文摘
网络爱情文摘
给我留言
朋友及网友的祝福
频道二
心灵日记
网友的心灵日记(可以公布自己日记,也可以隐藏)
我的简历:
本栏目有自己的基本情况、求职意向、证书、工作经历、自荐书等内容,是求职所需的东西!
我的作品:
本栏目包括职业中介管理系统作品的介绍!
我的像册:
本栏目放了网络祝福的可爱图片,不是自己所做,所以也就放了几张给大家欣赏!
我的文摘:
本栏目放了网络爱情的文章,十分感动的!
给我留言:
本栏目是自己因为2006年新年,特意做的祝福版,给朋友和网友们祝福的空间!
心灵日记:
本栏目可以申请自己的日记空间,可以公开内容,也可以保密内容!
关键字:
ASP个人网站祝福版心灵日记
2.2主页设计
网站主页采用静、动相结合的方式,即静态的主画面和动态的图片相结合,体现学校的勃勃生气,静态主页方式定义个人网站的色彩风格,就得利用ASP与数据库结合的技术建立数据库查询文章管理,采用交互式的动态的web画面来实现。
2.3数据库设计
采用ACCESS(可方便升级为SQLSERVER数据库)原则:
程序精练,代码优化,交互好,速度快。
(1)心灵日记
①“心灵日记”用户表:
diaryuser(重点字段)
字段名
属性
长度
作用
userid
自动编号
系统自动ID
username
文本
12
用户名
password
文本
50
用户密码
sex
文本
12
用户性别
qq
数字
用户QQ
bg
文本
50
用户选择背景
②“心灵日记”日记表:
diary(重点字段)
字段名
属性
长度
作用
diaryid
自动编号
系统自动ID
title
文本
255
用户标题
content
备注
用户日记内容
(2)祝福版
①“祝福表”用户表:
zb_book(完整字段)
字段名
属性
长度
作用
id
自动编号
系统自动ID
name
文本
50
用户姓名
mail
文本
50
用户电子邮件
oicq
文本
50
用户Oicq
home
文本
50
用户主页
content
备注
用户留言内容
face
文本
10
表情
head
数字
头像
idate
日期/时间
留言日期
ip
文本
50
留言者ip
reply
备注
回复内容
rdate
日期/时间
回复日期
①“祝福表”统计表:
config(完整字段)
字段名
属性
长度
作用
id
自动编号
系统自动ID
zb_admin
文本
50
后台管理员帐号
zb_pass
文本
50
后台管理密码
webname
文本
50
网站名
copyright
文本
50
底部版权信息
lymax
数字
最大留言字数,默认2000
ibook_zanghua
文本
255
过滤留言脏话
ibook_ubb
数字
留言ubb是否开放
ibook_count
数字
留言本每页显示几条记录
admin_ibook_num
数字
后台显示几条留言记录
第三章详细设计
3.1后台文章发布
3.1.1功能
管理员登陆后台,进入后台管理页面,管理员可以通过进入相关的模块,进行文章的录入、上传与发布,并可以删除文章,查看信息。
当后台发布文章以后,前台就可得到上传的具体结果,同样的,如果删除一篇文章,前台将不会显示。
3.1.2组成构造
1.conn.inc:
连接数据库函数
2.admin_Login.asp:
用户登陆
3.ErrHandler.asp:
系统出错提示页面
4.RomiTool.inc:
所有程序与数据库交互的SQL语句、动态页面模版公共调用类。
5.upload.inc:
文件上传对象,通过该脚本函数调用其方法实现无组建上传
6.index.asp:
网站首页
7.数据表文件data.mdb:
用来储存所有文章Access类型数据库文件。
3.1.3数据库结构设计
News文章:
字段名称
字段类型
描述
NewsID
自动编号
主关键字
Title
文本
标题
Content
备注
内容
TypeID
数字
文章类型
IssueDate
时间
发布时间
Visit
数字
访问人数
PicURL
备注
文件存放路径
PicURL2
备注
文件存放路径2
3.1.4界面设计与重点、难点代码的设计
难点代码的设计(数据库与显示程序网页)
文章发布的内容数据全部储存在数据库中,要在网页中显示发布的文章数据,必须先进行数据库的链接与打开,要链接数据库我们必须使用ADO对象群的Connection对象;而要打开数据库则必须使用ADO对象群的Recordset对象,程序:
setcn=server.createobject("adodb.connection")
cn.open"filedsn=c:
\programfiles\commonfiles\odbc\datasources\msaccessdatabase.dsn"
setrs=server.createobject("adodb.recordset")
sql="select*fromallmessageorderby留言时间desc"
rs.opensql,cn,1,1
Recordset对象是负责浏览与操作从数据库取出来的数据,Connection对象只负责与数据库进行链接的动作,并不能使用数据库内的数据,因此必须建立一个可以存取数据库数据的Recordset对象,
使用RS.Open方法存取”date.mdb”数据库
RS.OpenSQL,CN,1,1
使用open方法来打开数据表或执行Select指令参数设置如下:
1,参数一(SOURCE):
为欲打开的数据表或SQL指令。
2,参数二(ActionConnection):
指定一个已打开的数据库对象,将此参数设为链接我们已经建立好的Connection对象
“CN”。
3,参数三(CursorType):
指定Recordset的打开类型,1为可读写且可自由移动。
4,参数四(LockType):
指定锁定类型,1为只读。
数据排序与SQL指令
1.Select指令的筛选语句:
格式:
Select…From
在SQL语言中:
“Select”数据表“中选取某些“栏位”的数据.
2.如果要选取的数据表数据包含了一个以上的栏位,则我们可以利用“,”逗号来栏位名称隔开。
3.如果要选取的数据表数据包含了全部的栏位,则可以利用万用字符“*”来代表全部的栏位。
可排序数据的Select指令
1.当我们希望被选取出来的数据记录数据能够依据某个或某几个栏位的内容来排序时,只要将这些排序依据的栏位摆放在“OrderBy“保留字之后,然后将这处排序的语句连接在”Select…From“后面就行了。
2.“OrderBy“默认的排序方式是“由小排到大”,但若是希望排序方式是“由大排到小”,则我们可在栏位名称后再加上“Desc“保留字!
将排序方式改为”由大排到小“。
在“显示留言意见”网页中的打开数据库ASP程序中的语句:
SELECT*FromNewsorderbyIssueDateDesc
功能为:
从数据表“News“中取出所有栏位的数据,并将取出的数据记录内容依照”发布时间“栏位使用的”由大排到小“排序方式进行排序。
后台网页的管理模式
进入后台管理页面必须经过身份验证后台能登陆相关后台管理页面。
setconn=getConnection()
strSql="select*from_UserwhereUserName='"&str_UserName&"'andUserPasswrod='"&str_Passwrod&"'"
SetRs=Server.CreateObject("ADODB.RecordSet")
Rs.openstrSql,conn,1,1
IfRs.RecordCount>0Then
response.cookies("UserID")=Rs.Fields(0)
response.cookies("UserName")=Rs.Fields
(1)
Response.Redirect"admin/news.asp"
CallcloseConnection(conn,rs)
Else
CallErrHandler("用户名或密码错误","100001")
EndiF
通过传入的参数str_UserName和str_Passwrod来判断其是否复合数据库值。
如果结果集中大于零表示用户登陆成功,response.cookies("UserID")我们就可以通过response对象写cookies值。
然后进入后台管理初始化页面。
如果结果集中小于零,就调用出错函数提示错误信息。
文章发布函数
FunctionnewNews()
setupload=newupload_5xSoft
ConstMaxFileSize=5000000
ConstSaveUpFilesPath="file"
ConstUpFileType="GIF|JPG|gif|jpg|swf|SWF|MP3|mp3|MAV|mav"
DimstrRomi_Title,strRomi_Author,strRomi_IssueDate,strRomi_Content,strNewsid
DimformPath,formName,file,token,fileExt,arrUpFileType,EnableUpload,upload_err
Dimy
token=true
str_Title=upload.form("Romi_Title")
str_Author=upload.form("Romi_Author")
str_IssueDate=upload.form("Romi_IssueDate")
str_Content=upload.form("Romi_Content")
str_TypeID=upload.form("Romi_TypeID")
IfisDate(str_IssueDate)=falseThen
CallErrHandler("请输入正确的时间类型",100005)
EndIf
IfstrRomi_TypeID=""Then
CallErrHandler("Romi_TypeID丢失",100007)
EndIf
CalllnsNews(str_Title,str_Author,str_Content,str_TypeID,str_IssueDate)
strNewsid=getNewsID()
ifright(SaveUpFilesPath,1)<>"/"thenformPath=SaveUpFilesPath&"/"
y=0
ForEachformNameInupload.file
y=y+1
Setfile=upload.file(formName)
Iffile.filesize<1Then
token=False
EndIf
Iffile.filesize>(MaxFileSize*1024)Then
CallErrHandler("文件大小超过了限制"&CStr(MaxFileSize)&"K",100006)
Token=False
EndIf
fileExt=lcase(right(file.filename,3))'判断文件内型
arrUpFileType=split(UpFileType,"|")
Fori=0toubound(arrUpFileType)
IffileEXT=trim(arrUpFileType(i))Then
EnableUpload=True
ExitFor
EndIf
Next
IffileEXT="asp"orfileEXT="asa"orfileEXT="aspx"then
EnableUpload=False
EndIf
ifEnableUpload=falsethen
upload_err="只允许上传:
"&UpFileType&"文件类型"
token=false
endif
randomize
ranNum=int(90000*rnd)+10000
strFileName=year(now)&month(now)&day(now)&ranNum&"."&fileExt
filename=formPath&strFileName
iftoken=truethen
iffile.FileSize>0then
file.SaveAsServer.mappath(FileName)
Ify=1Then
CallupdSavePic(strNewsid,strFileName)
else
CallupdSaveFile(strNewsid,strFileName)
EndIf
endif
endif
setfile=nothing
Next
setupload=nothing
Response.Redirect"admin/NewsList.asp?
newstypeid="&strRomi_TypeID&""
EndFunction
所有模块的文章上传都调用该函数,首先先创建上传对象(setupload=newupload_5xSoft),然后设定上传文件的大小、文件路径、文件类型。
页面通过enctype="multipart/form-data"类型递交参数,程序通过创建的上传对象upload的from方法来获取参数。
然后通过ForEachformNameInupload.file来知道页面递交中有多少个type="file"的文本框,从而实现多循环附件上传。
在上传保存到本地目录前需要通过文件大小、类型、路径的一系列校验,总中实现文件上传并把数据存储到书库库表中。
难点代码的设计(简洁、漂亮、个性)
虽然本网站是基于ASP所做,但是一个很好的成功网站首先要来源于漂亮的页面,和美好的创意!
⑴欢迎界面:
(本网站首页简洁的介绍了本系列小站有三个主题,页面非常清爽:
有清澈的湖水以及倒影在水中的树林,远处的冰山配上蔚蓝的天空显得此页面非常的畅快,让网友刚进到首页就感觉此小站的创意来源于站长生活的向往!
)
⑵心灵日记:
(这个界面首先有自己QQ秀中的人物,加上可以让大家选择多达40种的漂亮背景,每种背景都非常有个性,最重要的是在这个“心灵日记”版快中写日记非常方便,也非常安全,如果日记是设为保密的话,那么日记内容只能有本人通过密码看到!
)
(注意:
这是本人在新年之前创作的作品,因此名字没有改为[毕业设计]字样)
⑶个人世界–首页:
(页面还是沿用了非常简洁的方式来表达,上方是一个非常漂亮的flash,导航条也是用flash做出来的!
下方的右边是自己的一张网络照片和简历搭配,左边是个人世界中的本
站最新公告和本站最新动态。
在下方的右边突出了自己最新的做的作品,左边则显示了本站最新网络爱情文摘!
)
个人世界–我的简历:
(还是非常简洁的描述了自己的基本情况)
1个人世界–我的作品:
(也是简洁的表达了自己的1个简单作品!
)
2个人世界–给我留言:
(这是自己在2006年的新年快到来之时做的一个祝福版,当时只用了一天就把前台的页面做了出来,都是自己的创意!
红色为主主要是突出新年的喜庆,当时大家非常喜欢这个祝福版!
也很支持这个祝福版,因为现在新年已过。
所以之后自己有时间会把这个祝福版改为普通的留言版,也喜欢2007年的新年,自己能做出更加突出漂亮的祝福版,那时候希望自己能把程序这方面做的更突出!
)
3.2系统的使用说明与安装
3.2.1运行环境要求
(1)Windows98,Me,2000,2003,Xp等
(2)PersonalWebServer3.0(PWS)
(3)Microsoft?
Access2000(9.0.2812)
3.2.2安装设置
A.将本网站拷贝到硬盘上的某一目录下,如:
拷贝至D:
\ASP下。
B.运行PWS,将默认的Web站点主目录设置为该目录,如上例应为D:
\ASP;
具体步骤:
a.选择“高级”项;
b.单击“编辑属性”按钮,在出现的“编辑属性”对话框中的“目录”项中填入“D:
\ASP,其他不变,确定;
C.设置启动默认文档为:
index.asp(注:
本小站的首页为index.html)
结论
从找素材,到最后的决定好了不少时间。
在接下来的制作可以说比较艰苦的,很多不懂的地方要去问老师朋友或自己看书。
决定做个人网站后到个网站去收了很多资料,看了很多网站。
最终确定了这几个模块,刚开始的时候程序开发很困难,对ASP中的6个重要的对象不是很了解,开发速度缓慢,后来在程序开发中发现很多模块功能很相似,自己就在想如何才能让代码更好的