版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ASP数据库网站设计报告使用实验室日期院系年级班级课程名称ASP数据库网站设计学号姓名指导老师实验项目名称《Access数据库ASP企业网站设计》教师评语成绩:教师签名:年月日实验目的1、主题明确,网站开发界面美观大方,要有创新性,体现ADO数据库连接过程,SQL的存储过程、触发器等;2、用ASP编程环境结合ACCESS数据库进行开发;3、写出数据库关系模式及相应的数据库表关系图;4、绘制网站前、后台相应的系统流程图、E-R图等;5、完成网站前台展示、后台管理(账户管理、管理员管理、产品录入与相关栏目增删改等)。7、掌握数据库基本概念及Web数据库的特点。8、熟练地进行Windows2000/XP下虚拟Web的安装和服务器配置。9、能较为熟练地用Photoshop设计美工界面,用FrontPage进行网页设计。10、掌握运用VBScript进行客户端、服务器端脚本的设计与编写。11、熟练地掌握ASP中常用内置对象和内置组件的使用方法;12、熟练掌握数据库查询方法。2.实验环境1、Windows2000和WindowsXP2、Photoshop3、FrontPage20034、flashmx5、dearmweavermx6、Windows2000/XP下虚拟Web和服务器7、iis5.03.实验内容3.1需求分析随着社会的发展与进步,网上购物也成为当今热门的主题,如果自己有好的店铺和企业,就需要发布一个网站让更多人了解认识,并对内设置登录权限,对外维护随时更新信息让顾客可以很清楚的根据自己的需求搜索,订购自己喜欢的衣服和首饰等等。本网站功能设置了几个模块:首页、新品速递、宝贝、购物须知、交流平台和后台管理。其中首页中有会员登录,后台管理中有管理员管理,会员管理,产品管理,再设置各种添加,删除,修改的功能。实现的功能模块图E—R图:3.2HTML语言和PhotoShop、Flash、FrontPage使用主要用于网页设计,创建静态网页,作为前台的网站开发界面,主要站点管理,IIS安装与配置,布局与框架、CSS样式表、层和时间轴、利用行为增强页面的交互性。3.3VBScript语言VBScript语言是一种脚本语言,可以实现某些特殊功能,它有基本的输入输出的方法,能够使用基本语句、MsgBox函数和InputBox函数,条件语句If...Then...Else和SelectCase语句、循环语句Do...Loop、While...Wend、For...Next以及ForEach...Next语句的使用方法,过程的使用方法,能够定义并调用Sub过程和Function过程,常用内部函数的使用方法3.4使用ASP对象,使用ASP组件,使用ADO对象有Response对象、Request对象、Server对象、Session对象和Application对象,理解常用的ASP组件的用途,能够创建这些服务器组件的对象实例,Connection对象的使用方法,Recordset对象的使用方法,Command对象及其Parameters集合的使用方法和步骤。通过ADO对象(Connection、Recordset、Command)来访问数据库。通过这些ADO对象不仅可以连接到Access和SQLServer等格式的数据库,而且可以将数据库中的信息显示在网页上,还可以对数据库中的数据进行增删改等操作。4.原理分析4.1HTML语言HTML语言是web的基础,也是FrontPage的基础,它是超文本标记语言的缩写,用来表示网上信息的符号标记语言。HTML文档就是一个网页,可以独立存在,HTML文档一般分为文档头部(head)和文档主体(body)。做网页时可以利用其文档来编辑页面,对于用FrontPage网页编辑软件直接利用各种动作编辑可以自动生成HTML语言。不是特别情况,不需要进行太多的HTML语言的代码编写。只需要自己构造特定的框架一步步进行。4.2利用Photoshop做美工Photoshop是一种很常用的图像处理软件,通过在工作域中,利用各种工具对矢量图或者位图进行不同的操作,可以进行颜色的分配调整,图片大小,修饰,设计等等,还可以通过滤镜等做出各种特殊的效果,对文字的处理,图像属性的优化等为网页的可视化打下基础准备。4.3利用flash做动画在网页中不可少的是动画,可以根据自己的需求,进行简单的动画设计并且插入。一般需要建立一个舞台,在舞台中新建元件,影片剪辑等,通过一系列的转化和设计,返回舞台,对帧作调整和设计,比较常用的是幻灯片模式的图片浏览。4.4ASPASP是一种服务器端脚本编写环境,可以用来创建和运行动态网页或Web应用程序。4.4.1ASP特点(1)利用ASP可以实现突破静态网页的一些功能限制,实现动态网页技术;(2)ASP文件是包含在HTML代码所组成的文件中的,易于修改和测试;(3)服务器上的ASP解释程序会在服务器端执行ASP程序,并将结果以HTML格式传送到客户端浏览器上,因此使用各种浏览器都可以正常浏览ASP所产生的网页;(4)ASP提供了一些内置对象,使用这些对象可以使服务器端脚本功能更强。(5)ASP可以使用服务器端ActiveX组件来执行各种各样的任务(6)方便连接ACCESS与SQL数据库.4.4.2ASP的原理1)用户向浏览器地址栏输入网址,默认页面的扩展名是.asp。2)浏览器向服务器发出请求。3)服务器引擎开始运行ASP程序。4)ASP文件按照从上到下的顺序开始处理,执行脚本命令,执行HTML页面内容。5)页面信息发送到浏览器5具体实验步骤5.1网页前台设计1)用FrontPage新建一个网页,利用添加表格的方法划分框架,首先插入两行表格,将单元格边距,边框粗细等都设置为0。2)第一行插入背景图片是通过Photoshop运用渐变的颜色设计的,第二个背景图片是通过现成的图片在Photoshop中加入标题“精品靓衣”。3)下一列插入的都是悬停按钮,分别用来链接到不同的网页界面。4)flash的制作是通过多层叠加,每层又都是建的影片剪辑,实现影片剪辑的是通过元件实现的。每个图片的交换,通过处理帧的位置,而图片的闪现是透明度体现的。5)用户的登录是插入的文本框,对于会员登录,最新状态字体都是在Photoshop中美工后作为图片插入的。6)设置完主页后,再根据按钮依次设计出各个分网页,进行之间的链接就可以完成静态的前台页面了。首页:5.2网页后台的设置使用Access创建数据库。然后通过ASP+Access的Web开发技术进行制作甚至登录等权限5.2.1数据库数据库:顾客用户表:管理员用户表:产品信息表:5.2.2后台管理图登录界面:系统管理功能模块:添加管理员:管理员列表::添加用户用户信息:添加产品产品信息:5.2.3数据库链接到ASP的后台Access连接字符串ds="driver={MicrosoftAccessDriver(*.mdb)};dbq="&server.mappath("data/Product.mdb")'数据库路径一定要写对,否则会连接不上数据库Productadd1的数据库链接代码db="data\product.mdb"cate=Trim(Request.Form("categoryid"))pn=Trim(Request.Form("productname"))pe=Trim(Request.Form("productexplain"))pc=Trim(Request.Form("price"))rk=Trim(Request.Form("remark"))使用Server对象的CreateObject方法建立Connection对象sql="SELECT*FROMtbproductWHEREcategoryid='"&cate&"'"把表单传递的变量插入到数据库的表中sql="insertintotbproduct(categoryid,productname,productexplain,price,remark)values('"&cate&"','"&pn&"','"&pe&"','"&pc&"','"&rk&"')"这里没有报警机制,就是当库记录为空还要删除,其实加入一个if判断就可以了sql="DELETEFROMtbproduct"sql=sql&"WHEREcategoryid='"&cate&"'"producedel的数据库连接代码db="data\product.mdb"cate=Trim(Request.QueryString("no"))'response.write"<script>alert('"&cate&"')</script>"sql="SELECT*FROMtbproductWHEREcategoryid='"&cate&"'"Setconn=Server.CreateObject("ADODB.Connection")Setrs=Server.CreateObject("ADODB.Recordset")conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;"&_ "DataSource="&Server.MapPath(db)conn.Open()'连接数据库rs.ActiveConnection=conn'设置rs的ActiveConnection属性rs.CursorType=1'设置游标类型rs.LockType=1'设置锁定类型rs.Opensql'打开记录集%>Productjoin1数据库代码sql="UPDATEtbproductSET"sql=sql&"categoryid='"&cate&"',"sql=sql&"productname='"&pn&"'"sql=sql&"productexplain='"&pe&"'"sql=sql&"price='"&pc&"'"sql=sql&"remark='"&rk&"'"sql=sql&"WHEREcategoryid='"&cate&"'"productlist数据库代码db="data/product.mdb" count=0'初始化计数器 pageSize=20'每页显示20条记录 sql="SELECT*FROMtbproduct" '使用Server对象的CreateObject方法建立Connection对象 Setconn=Server.CreateObject("ADODB.Connection") Setrs=Server.CreateObject("ADODB.Recordset") '设置Connection对象的ConnectionString conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;"&_ "DataSource="&Server.MapPath(db) conn.Open()'连接数据库 rs.ActiveConnection=conn'设置rs的ActiveConnection属性 rs.CursorType=1'设置游标类型 rs.LockType=1'设置锁定类型 rs.Opensql'打开记录集 Ifrs.EOFThen Response.Write("暂时没有任何信息!") Response.End EndIf后台管理的代码:<%publicfunctionOutStr(str,mode)ifmode=""ormode=1then color="#000000" elseifmode=2then color="#FF0000" endif outstr="<html><head><metahttp-equiv=Content-Typecontent=text/html;charset=gb2312></head><body><p></p><divalign=center><center><tableborder=0cellpadding=0cellspacing=0width=254><tr><tdwidth=254><hr></td></tr><tr><tdwidth=254><palign=center><fontcolor="&color&">"&str&"</font></td></tr><tr><tdwidth=254><hr></td></tr></table></center></div><palign=center><spanstyle=""font-size:9pt"">[<ahref=javascript:history.back()>退回</a>]</span></p></body></html>"endfunctionsuboutcheck(check_value) ifcheck_value<>""then Response.Writeoutstr(check_value,2) Response.End endifendsubpublicfunctionHtmlOut(str)'将文字转化为它的源代码格式dimguestifisnull(str)orstr=""then htmlOut=str exitfunctionendifguest=strguest=Replace(Guest,"","")guest=Replace(Guest,"","`nbsp;")Guest=server.htmlencode(Guest)guest=Replace(Guest,"`nbsp;","")guest=Replace(Guest,vbcrlf,"<BR>")HtmlOut=guestendfunctionpublicfunctionOutOption(conn,tabel,style,value)'从数据库中提取内容生成下拉菜单'conn为数据库联接table为表名style下接菜单样式 dimre,sql,selected setre=server.CreateObject("ADODB.RECORDSET") sql="SELECT*FROM"&tabel&"ORDERBYvalue" re.Opensql,conn Response.Write("<select"&style&">"&vbCrLf) whilere.EOF<>true iftrim(re("value"))=trim(value)then selected="selected" else selected="" endif response.write(vbTab&"<option"&selected&"value="""&re("value")&""">"&re("text")&"</option>"&vbCrLf) re.MoveNext wend Response.Write("</select>"&vbCrlf) setre=nothing endfunctionPublicFunctionCheckValue(Str,Low,Up,Mode,Lable)'Mode=1检测是否为空2是否是数字4是否整数'8是否是为数字、字母和_.-'16自定义字符检测'32长度检测'64数字大小检测DimTempDimLength,i,BaseIfModeMod2>=1ThenIfStr=""ThenTemp=Temp&"“"&Lable&"”"&"不能为空!"&vbCrLfEndIfEndIfIfModeMod4>=2ThenIfNotIsNumeric(Str)AndStr<>""ThenTemp=Temp&"“"&Lable&"”"&"必需是数字!"&vbCrLfEndIfEndIfIfModeMod8>=2ThenIfNotIsNumeric(Str)AndStr<>""AndInStr(Str,".")=0ThenTemp=Temp&"“"&Lable&"”"&"必需是整数!"&vbCrLfEndIfEndIfIfModeMod16>=8ThenLength=Len(Str)Base="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_-."Fori=1ToLengthIfInStr(Base,Mid(Str,i,1))=0ThenTemp=Temp&"“"&Lable&"”"&"包含非法字符!它只能是字母、数字和“-_.”。"&vbCrLfExitForEndIfNextEndIfIfModeMod32>=16ThenLength=Len(Str)Base=Replace(Low,"[A-Z]","ABCDEFGHIJKLMNOPQRSTUVWXYZ")Base=Replace(Base,"[a-z]","abcdefghijklmnopqrstuvwxyz")Base=Replace(Base,"[0-9]","0123456789")Fori=1ToLengthIfInStr(Base,Mid(Str,i,1))=0ThenTemp=Temp&"“"&Lable&"”"&"包含非法字符!它只能是"&Up&"。"&vbCrLfExitForEndIfNextEndIfIfModeMod64>=32ThenLength=Len(Str)IfNot(Length>=LowAndLength<=Up)ThenTemp=Temp&"“"&Lable&"”"&"的长度必需在"&Low&"到"&Up&"之间!"&vbCrLfEndIfEndIfIfModeMod128>=64ThenIfIsNumeric(Str)ThenIfNot(CInt(Str)>=CInt(Low)AndCInt(Str)<=CInt(Up))ThenTemp=Temp&"“"&Lable&"”"&"必需在"&Low&"到"&Up&"之间!"&vbCrLfEndIfEndIfEndIfCheckValue=TempEndFunctionSubLastNextPage(pagecount,page,table_style,font_style)'生成上一页下一页链接 EndSubfunctionIsChecked(group,value) dimi fori=0toUBound(group) iftrim(value)=trim(group(i))then IsChecked=true exitfunction endif next IsChecked=falseendfunctionPublicFunctionFormatDT(dt,style)'style=02000-10-10下午12:17:45'style=12000-10-1023:17:45'style=22000-10-1023:45'style=300-10-1023:45'style=410-1023:45'style=52000-10-10'style=600-10-10'style=710-10Dimnowdate,y,m,d,h,i,s,t,APM,hAPMnowdate=dty=Year(nowdate)m=Month(nowdate)d=Day(nowdate)h=Hour(nowdate)i=Minute(nowdate)s=Second(nowdate)Ifh>12ThenAPM="下午"hAPM=CStr(CInt(h)Mod12)ElseAPM="上午"hAPM=hEndIfSelectCasestyleCase0t=y&"-"&m&"-"&d&""&APM&hAPM&":"&i&":"&sCase1t=y&"-"&m&"-"&d&""&h&":"&i&":"&sCase2t=y&"-"&m&"-"&d&""&h&":"&iCase3t=Right(y,2)&"-"&m&"-"&d&""&h&":"&iCase4t=m&"-"&d&""&h&":"&iCase5t=y&"-"&m&"-"&dCase6t=Right(y,2)&"-"&m&"-"&dCase7t=m&"-"&dEndSelectFormatDT=tEndFunctionPublicFunctionFindSignString(Head,Cauda,str)DimHeadLenght,Caudalenght,HeadPosition,CaudaPositionDimTempHeadLenght=Len(Head)Caudalenght=Len(Cauda)HeadPosition=InStr(str,Head)IfHeadPosition=0ThenFindSignString="Null"ExitFunctionEndIfCaudaPosition=InStr(HeadPosition+HeadLenght,str,Cauda)IfCaudaPosition=0ThenFindSignString="Null"ExitFunctionEndIfTemp=Mid(str,HeadPosition+HeadLenght,CaudaPosition-HeadPosition-HeadLenght)FindSignString=TempEndFunctionPublicFunctionSep(Str,Sepa,Arrage)DimiDimTempDimEndedDimStartDimEnd1Start=1DoUntili=ArrageIfEndedThenTemp=""ExitDoEndIfEnd1=InStr(Start,Str,Sepa)IfEnd1=0ThenIfEnded=FalseThenTemp=Right(Str,Len(Str)-Start+1)Ended=TrueEndIfElseTemp=Mid(Str,Start,End1-Start)EndIfStart=End1+1i=i+1LoopSep=TempEndFunctionPublicFunctionMsgOut(Msg,href,mode) ifmode=1then Response.Write"<html><metahttp-equiv=Content-Typecontent=text/html;charset=gb2312><SCRIPTLANGUAGE=javascript>alert('"&Msg&"');window.open('"&href&"','_self');</SCRIPT></html>" elseifmode=2then Response.Write"<html><metahttp-equiv=Content-Typecontent=text/html;charset=gb2312><head><metahttp-equiv=""Content-Type""content=""text/html;charset=gb2312""></head>" Response.Write"<body><BR><BR><palign=""center"">"&Msg&"</p>" Response.Write"<palign=""center""><ahref="""&href&""">返回</a></p></body></html>" elseifmode=3then Response.Write"<html><metahttp-equiv=Content-Typecontent=text/html;charset=gb2312><head><metahttp-equiv=""Content-Type""content=""text/html;charset=gb2312""></head>" Response.Write"<body><BR><BR><palign=""center""><strong><fontcolor=#FF0000>"&Msg&"</font></strong></p>" Response.Write"<palign=""center""><ahref="""&href&""">返回</a></p></body></html>" endif EndFunctionPublicFunctionCutStr(str,number)Dimlength,llen,i,valuelength=Len(str)Fori=1Tolengthvalue=Asc(Mid(str,i,1))Ifvalue>=-127Andvalue<=127Thenllen=llen+1Elsellen=llen+2EndIfIfllen>=numberThenCutStr=Left(str,i-3)&"..."ExitFunctionEn
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 某钢铁厂环境保护规定
- 某水泥厂销售细则
- 2026中国新能源汽车电机控制器技术发展及投资价值评估报告
- 2026人工智能科技行业风险投资现状分析及投资融资策略研究报告
- 2026中国智能水利设备制造业市场现状供需分析及投资发展评估规划报告
- 2026日本化妆品原料供应商市场供需关系及竞争格局报告
- 2026中国自动驾驶芯片算力竞赛与车规级认证体系建设分析报告
- 商贸物流城项目可行性研究报告
- 北京市昌平区名校2027届九年级化学第一学期期中质量检测模拟试题含解析
- 辽宁省抚顺市新宾满族自治县2027届九上物理期末监测模拟试题含解析
- 2026冶炼厂面试题及答案
- 课堂英语教师口语用语200句
- 四年级数学(简便运算)计算题专项练习与答案
- 2026年高考政治真题完全解读(黑吉辽蒙卷)
- 重大事故隐患排查表
- 德育与班级管理PPT完整全套教学课件
- 城市轨道交通车站设备PPT完整全套教学课件
- 职业学院教师教学工作规范
- 铜陵市源丽电子化学品有限公司年产100kt-aAR级精制硫酸项目环评报告
- GB/T 13871.6-2022密封元件为弹性体材料的旋转轴唇形密封圈第6部分:弹性体材料规范
- 师德师风警示教育课件
评论
0/150
提交评论