在校2年多期间参与过很多的实训,每次的实训都能让我学到很多实质性的东西。这次为期4周的图书馆管理系统项目开发的实训算是一个比较大型,比较完善的项目。因为有了以前上过相关的课程,相关的实训也不少,所以这次实训给我们增加了难度。这次实训也是考验团队合作精神的实训。让我们这些大三的学生们意识到团队的力量和团队意义的重要性。经历过实习期间的我们更是有深刻的体会。我认为现在不管做什么事,都不是你个人独立去完成的,现在的社会更注重的是在团队里的合作能力,协调能力。如果是很自我的人,自顾自己,毫无团队意识的人,她做好的模块是无用的,一个脱离了团队的人做出来的东西肯定也是无主题无中心,是不被采纳的。毕竟个人的能力是有限的,而团队的凝聚力及良好的协助精神才能把项目做的更好。
当然我们的团队也有个很不错的组名——“ATM”。而我们ATM组的组训是“求实,求精,一切只为了您”。在老师的带领下,我们各尽其职、尽心尽力的为我们的项目做好每一天要完成的任务,一起讨论一起解决问题,我们都很团结,一心想着做好这次项目,紧跟着老师的脚步,一点点的在完善我们的项目。只有我们把前期的工作做好了,接下来的项目才会游刃有余的得到解决。
现在回想整个项目从一开始的《图书馆管理系统需求分析》文档到《图书馆管理系统设计说明书》再到最后的编程阶段,历程也算艰辛,在编写这些文档时,先要做好各模块的流程图,整个项目的路程思路要很清晰。编写文档时,我深刻体会到想要做好一个有技术文档也是要花很多心思去琢磨的。有一份良好的文档才是整个项目的基础,后续程序才会有完美。
编写完文档后,接下来就是编程。在编程之前先设计好数据库里所要用到的表,这样在后续编程时不会不知所云。在编写前,老师让我们更正规的命名一些变量,让我们建立了好的代码编程习惯,有助于让不同技术人员之间协作更快捷的找出错误并修改。编程算是做的最久的一块了,也是最难的一块。对一些语句不是很熟练,以前都是有涉及到编程课时才去编写,课程结束后也就不去回顾这些编程语句。久而久之,淡忘一些语句,造成此次项目的一些功能无法得到很好的现实。
图书馆管理系统开发下来,前前后后,忙忙碌碌转眼已是4周光阴。这个项目下来,我是负责编目模块,当然里面有些模块是和组员一起讨论,请教老师才得以实现。在这次实训中,我深深领悟到自身的不足,也做了自我检讨,这些都是自己的专业知识,竟然忘的那么快,以后还怎么找单位,还会什么单位会要基础这么差的员工。还好在毕业前有这次图书
馆管理系统的开发,一次这么好的锻炼机会。4周的实训,不仅提高我的编写程序的能力,还让我再次巩固这些语言。更重要的是我和组员之间的配合,这也锻炼了我们的协调组织沟通能力。
第二篇:图书管理系统个人总结
C#课程设计
实
训
总
结
姓 名:
班 级:
学 号:
指导教师:
一学期很快就过去了,在这一学期中,我通过对Visual c# 20xx程序设计的学习获得了很多知识。在本次C#课程设计中,我学习到了许多书本上没有的知识,是我了解到程序开发的艰难。虽然这次实训中有许多的不足,但起码是了解了图书管理系统开发的部分过程。这次课程设计给我提供了一个很好的机会,在设计中发现,有很多已经学过的东西我们没有理解到位不能灵活运用于实际,不能很好的用来解决问题,这就需要自己不断的大量的实践,通过不断的自学,不断地发现问题,思考问题,进而解决问题。在这个过程中我们将深刻理解所学知识,同时也可以学到不少很实用的东西。
一 实训选题
图书管理系统的设计
二 实训设计作品内容
这次的课程设计,我们需要做一个图书管理系统的登录界面及主界面。
三 设计中遇到的问题及解决方案
这次的课程设计,我们需要做一个图书管理系统的登录界面及主界面。在制作过程中,我亲身体验了一回系统的设计开发过程,很多东西书上写的很清楚,貌似看着也很简单,思路非常清晰。但真正需要自己想办法去设计一个系统的时候才发现其中的难度。本次实训中,在做到各个页面之间的跳转中,不知如何制作,在我像同学及老师的不断请教中终于学会了。
四 作品的优点及不足
通过本次课程设计,我感觉我的作品的优点在于,各页面之间的背景设计还是不错的,不足在于设计页面过于简单,有的设计不是很合理。希望以后能改正,更加努力学习。
五 对实训的意见及建议
通过这次课程设计的完成,使我对自己所学知识进一步的了解,同时通过实践发现自己的不足,对知识的掌握及运用存在诸多的不完善。本系统也存在着很多不足,如系统十分简单,实现功能也不够完善。所以在今后的学习中我会继续努力,完善自我。在本次的实训中我感觉实训的时间有点短,有些设计是需要时间来思考的,但两天的时间过于短,由许多的功能无法实现及更改,希望学校加长对实训时间的延长。还有就是实训环境有点简陋,实训室没办法上网,有些东西不会而无法及时的上网查询。希望领导能够改善。对于建议,希望领导能给实训室装上风扇,最好能装上空调。
第三篇:图书管理系统实训综合报告
实训项目设计报告
目 录
第一章 绪论.... 5
第二章系统分析.... 5
2.1需求分析... 5
2.2 项目规划... 5
● 经济性... 6
第三章ASP技术简介.... 6
3.1 ASP访问数据库的原理... 6
3.2 ASP的运行环境... 6
3.3 ASP的内建对象... 6
3.4 IIS的安装与配置.... 7
第四章系统功能结构图.... 7
4.1 系统功能结构图... 7
第五章系统设计.... 9
5.1开发及运行环境... 9
● 硬件平台... 9
● 软件平台... 9
5.2数据库设计... 9
5.3 截图欣赏... 10
5.4 代码设计... 13
第六章............................................................................................. 总结..... 27
摘 要
随着互联网的不断发展,网上购物作为一种新的购物方式逐渐被人们所接受并广泛使用,足不出户也可以购得你想要的物品,淘宝的成功让更多人了解了网上购物的真实性与方便性,并且正在改变传统的购物模式。
关键词:购书
第一章 绪论
随着互联网的不断发展,网上购物作为一种新的购物方式,已经被越来越多的人所接受,并且正在改变传统的网络和社会结构。本网站应用Ajax技术来实现,可轻松享受购物的乐趣,足不出户也可以享受生活。
第二章 系统分析
2.1需求分析
在信息时代的今天,网络成为人们工作、学习的一部分,不断充实和改变着人们的生活。当今的人们,工作压力越来越大,下班后更多的人愿意回家休息,网站的出现满足了人们足不出户也可轻松享受购物的乐趣,书籍可以让人明事理,它犹如一名老师,指导着我们的思想,网上书店的建立让书籍爱好者轻松找到自己的乐趣所在,对于你想要买的书,在网上购买后我们直接送货上门,对于你想买而网站上没有的书,你可以给我们留言预定,我们会在货一到我们会在第一时间送货到门。只要你登录注册成为会员后,就可以随时随地购买你想要的书了。
2.2 项目规划
经过上面的分析,本系统可以划分为前台和后台两部分。
前台的购物车功能模块包括:个人资料,修改密码,取回密码,我的订单,我的收藏夹,收货人信息,信息统计
后台的信息管理功能模块包括:图书订单管理、订单查询、查看发货通知、发布发货通知、图书评论审核、公告管理、查看网站留言和查看书籍求购。
2.3设计目标
该购物车及其后台信息管理系统要实现如下目标。
● 用户实现个人资料及其密码的管理
● 用户对其订单、收藏夹进行查看。
● 用户对收货人信息、订单信息统计进行查看
● 后台管理员现实对订单的管理
● 后台管理员实现对发货通知的管理。
● 后台管理员实现对书籍评论、公告、用户留言、求购信息的管理。
2.4可行性分析
本网站是为方便人们购书,足不出户也可网上购书的角度进行设计的,你可以在我们的网站轻松购书,查询你想要的书籍,还有优惠区域的书籍,对于你想要买而我们网站上没有的书籍,你可以留言告诉我们,我们好第一时间预定,并且尽快送货上门,满足你的要求。
● 经济性
“天下书城”网站有新书上架专栏,可以让你掌握新书动向,特价书籍让你用一样的价钱买两样书籍,实惠又划算。书店新闻介绍一些政策与会议,让你了解时事,随时掌握国家动态。书籍排行网络近期热卖书籍,图书分类专栏让你更快找到你想要买的书籍。顾客通过注册成为网站会员,即可参与购买,在书城里逛的时候,看到想买的就把它加入购物车,最好进行交易,有什么疑问,随时可以通过网络联系我们,也可以拨打我们的固定热线。
第三章 ASP技术简介
3.1 ASP访问数据库的原理
ASP是服务器端的脚本执行环境,可用来产生和执行动态的高性能的WEB服务器程序。
当用户使用浏览器请求ASP主页时,WEB服务器响应,调用ASP引警来执行ASP文件,并解释其中的脚本语言(Jscript或VBScript),通过ODBC链接数据库,由数据库访问组件ADO(ActiveX Data Objects)完成数据库操作,最后ASP生成包含有数据查询结果的HTML主页返回用户端显示。
3.2 ASP的运行环境
目前ASP可运行在三种环境下:
1) windows nt server 4.0 运行IIS 3.0(Internet information Server)以上。
2) windows nt workstation 4.0 运行Peer Web Server 3.0以后。
3) windows 95/98 运行PWS(Personal Web Server)。
3.3 ASP的内建对象
ASP提供了六个内建对象供用户直接调用:
1) Application对象:负责管理所有的绘画信息,可用来在指定的应用程序的所有用户之间共享信息。
2) Session对象:存贮特定用户的会话信息,只被该用户访问,当用户在不同WEB页面跳转时,Session中的变量在用户整个会话过程中一直保存。Session对象需cookie支持。
3) Request对象:从用户端取得信息传递给服务器,是ASP读取用户输入的主要方法。
4) Response对象:服务器将输出内容发送到用户端。
5) Server对象:提供对服务器有关方法和属性的访问。
6) Object Context 对象:IIS 4.0 新增的对象,用来进行事物处理,此项功能需要得到MTS(Microsoft Transcation Server)管理的支持。
3.4 IIS的安装与配置
a.安装IIS
若操作系统中还未安装IIS服务器,可打开“控制面板”,然后单击启动 “添加/删除程序”,在弹出的对话框中选择“添加/删除Windows组件”,在Windows组件向导对话框中选中“Internet信息服务(IIS)”,然后单击“下一步”,按向导指示,完成对IIS的安装
b.启动Internet信息服务(IIS)
Internet信息服务简称为IIS,单击Windows开始菜单---所有程序---管理工具---Internet信息服务(IIS)管理器,即可启动“Internet信息服务”管理工具.
c.配置IIS
IIS安装后,系统自动创建了一个默认的Web站点,该站点的主目录默认为C:\\Inetpub\\www.root。
用鼠标右键单击“默认Web站点”,在弹出的快捷菜单中选择“属性”,此时就可以打开站点属性设置对话框,在该对话框中,可完成对站点的全部配置。
第四章 系统功能结构图
4.1 系统功能结构图
网站模块图:
购物流程E-R图:
会员信息E-R图:
第五章 系统设计
5.1开发及运行环境
在开发“天下书城”网站时,使用的开发环境如下。
● 硬件平台
☆ CPU:Genuine Intel T1400。
☆ 内存:512MB以上。
● 软件平台
☆ 操作系统:Windows XP/ Windows 2000/ Windows 2003。
☆ 数据库:SQL Server 2000。
☆ 开发工具:Dreamweaver 8.0。
☆ 浏览器:IE 6.0及以上版本。
☆ Web服务器:IIS 5.0。
☆ 分辨率:最佳效果1024*768像素。
5.2数据库设计
本系统数据库采用,Access,系统数据库名称为Database.asa。
5.3 截图欣赏
首页
登录页面 登录后
注册页面
书籍排行页面
后台
管理员登录页面
用户删除管理
5.4 代码设计
l 网站注册:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="<%=theme%>
css.css" rel="stylesheet" type="text/css">
</head>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<!--#include file="webtop.asp"-->
<%select case action
case ""%>
<title><%=webname%>--新用户注册(第一步)</title>
<div align="center">
<table cellSpacing="0" cellPadding="0" width="955" align="center" border="0" id="table83">
<tr>
<td width="168">
<img id="class_r1_c1" height="29" alt="" src="<%=theme%>class_r10_c1.jpg" width="168" border="0" name="class_r1_c1"></td>
<td width="771" background="<%=theme%>class_r1_c4.jpg"> </td>
<td>
<img id="class_r1_c6" height="29" alt="" src="<%=theme%>class_r1_c6.jpg" width="16" border="0" name="class_r1_c6"></td>
</tr>
</table>
<table height="200" cellSpacing="0" cellPadding="0" width="955" align="center" border="0" id="table84">
<tr>
<td vAlign="top" background="<%=theme%>class_r2_c1.jpg"><br>
<div align="center">
<table width="89%" border="0" cellpadding="0" cellspacing="0" id="table124">
<tr>
<td height="18"><div align="center"><b><font size=2><%=webname%>注册条约</font></b></div></td>
</tr>
<tr>
<td>
<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0" id="table125">
<tr>
<td> <%call tiaoyue()%> </td>
</tr>
</table></td>
</tr>
</table>
</div>
<div align="center">
<table width="50%" border="0" align="center" cellpadding="0" cellspacing="0" id="table126">
<tr><form name="form2" method="post" action="member_reg.asp?action=next&random=<%=date%>&time=<%=time%>&ip=<%=Request.ServerVariables("REMOTE_ADDR")%>">
<td height="36"><div align="center">
<input type="submit" name="Submit4" value="我 同 意">
<input type="button" name="Submit5" value="我 不 同 意" onClick="location.href='index.asp'">
</div></td></form>
</tr>
</table>
</div>
</td>
</tr>
</table>
<table cellSpacing="0" cellPadding="0" width="955" align="center" border="0" id="table123">
<tr>
<td width="15">
<img id="class_r4_c1" height="18" alt="" src="<%=theme%>class_r4_c1.jpg" width="15" border="0" name="class_r4_c1"></td>
<td width="924" background="<%=theme%>class_r4_c2.jpg"> </td>
<td>
<img id="class_r4_c6" height="18" alt="" src="<%=theme%>class_r4_c6.jpg" width="16" border="0" name="class_r4_c6"></td>
</tr>
</table>
<%case "next"%>
<title><%=webname%>--新用户注册(第二步)</title>
<div align="center">
<table cellSpacing="0" cellPadding="0" width="955" align="center" border="0" id="table133">
<tr>
<td width="168">
<img id="class_r1_c9" height="29" alt="" src="<%=theme%>class_r10_c1.jpg" width="168" border="0" name="class_r1_c9"></td>
<td width="771" background="<%=theme%>class_r1_c4.jpg"> </td>
<td>
<img id="class_r1_c8" height="29" alt="" src="<%=theme%>class_r1_c6.jpg" width="16" border="0" name="class_r1_c8"></td>
</tr>
</table>
<table height="200" cellSpacing="0" cellPadding="0" width="955" align="center" border="0" id="table134">
<tr>
<td vAlign="top" background="<%=theme%>class_r2_c1.jpg">
<div align=center>
<table width="770" border="0" cellpadding="0" cellspacing="1" id="table136">
<tr>
<td height="230">
<div align="center">
<table width="58%" border="0" cellpadding="2" cellspacing="1" id="table137" >
<form name="userinfo" method="post" action="member_reg.asp?action=save" >
<tr>
<td class=pad><br>
通过什么方式找到本网站 :<font color="#CC0000"><span style="font-size: 9pt"><input type="radio" value="朋友" name="tp" checked></span></font><span style="font-size: 9pt; font-family: 宋体">朋友</span><font color="#CC0000"><span style="font-size: 9pt"><input type="radio" value="搜索" name="tp"></span></font><span style="font-size: 9pt; font-family: 宋体">搜索</span><font color="#CC0000"><span style="font-size: 9pt"><input type="radio" value="广告" name="tp"></span></font><span style="font-size: 9pt; font-family: 宋体">广告</span><font color="#CC0000"><span style="font-size: 9pt"><input type="radio" value="书店" name="tp"></span></font><span style="font-size: 9pt; font-family: 宋体">书店</span><font color="#CC0000"><span style="font-size: 9pt"><input type="radio" value="其他" name="tp"></span></font><span style="font-size: 9pt; font-family: 宋体">其他</span></td>
</tr>
<tr>
<td class=pad> </td>
</tr>
<tr>
<td class=pad height="55">E-Mail
:
<input name="useremail" type="text" id="useremail" value="@" size="25" style="font-size: 9pt">
<font color="#666666">
<img border="0" src="<%=theme%>bit2.gif" width="20" height="12"></font><font color="#AAAAAA">请填写您有效的邮件地址</font> </td>
</tr>
<tr>
<td class=pad height="55">用 户 名:
<input name="username" type="text" id="username" size="14" style="font-size: 9pt" onBlur="check_user_exists(this.form);">
<font color="#666666">
<img border="0" src="<%=theme%>bit2.gif" width="20" height="12"></font><font color="#AAAAAA">您的登陆用户名 <span id="checkInfo"></span></font><br>
</td>
</tr>
<tr>
<td class=pad>真实姓名: <font color="#cb6f00">
<input name="userzhenshiname" type="text" id="userzhenshiname" size="14" style="font-size: 9pt"></font>
<font color="#666666">
<img border="0" src="<%=theme%>bit2.gif" width="20" height="12"></font><font color="#AAAAAA">以便发货确认</font><br>
</td>
</tr>
<tr>
<td class=pad>密
码: <font color="#cb6f00">
<input name="userpassword" type="password" id="userpassword" size="20" style="font-size: 9pt"></font>
<font color="#666666">
<img border="0" src="<%=theme%>bit2.gif" width="20" height="12"></font><font color="#AAAAAA">密码不能小于6位</font><br>
</td>
</tr>
<tr>
<td class=pad>确认密码: <font color="#cb6f00">
<input name="userpassword1" type="password" id="userpassword1" size="20" style="font-size: 9pt"></font>
<font color="#666666">
<img border="0" src="<%=theme%>bit2.gif" width="20" height="12"></font><font color="#AAAAAA">再次输入密码</font><br>
</td>
</tr>
<tr>
<td class=pad valign="top" height="54">验 证 码:
<input class=wenbenkuang name=verifycode type=text value="<%If GetCode=9999 Then Response.Write "9999"%>" maxLength=4 size=4 style="font-size: 9pt" onFocus="this.value=''">
<img src=GetCode.asp><font color="#666666"><img border="0" src="<%=theme%>bit2.gif" width="20" height="12">输入验证码<img border="0" src="<%=theme%>bit2.gif" width="20" height="12">若无法显示需<u><a href="inc/fix/sp2.reg"><font color="#CB6F00"><u>下载此补丁</u></font></a></u></font></td>
</tr>
<tr>
<td class=pad height="47" valign="top">密码提问:
<select class="text" id="question" name="quesion" size="1" style="font-size: 9pt">
<option value selected>请选择一个问题</option>
<option value="我就读的第一所学校的名称?">我就读的第一所学校的名称?</option>
<option value="我最喜欢的休闲运动是什么?">我最喜欢的休闲运动是什么?</option>
<option value="我最喜欢的运动员是谁?">我最喜欢的运动员是谁?</option>
<option value="我最喜欢的物品的名称?">我最喜欢的物品的名称?</option>
<option value="我最喜欢的歌曲?">我最喜欢的歌曲?</option>
<option value="我最喜欢的食物?">我最喜欢的食物?</option>
<option value="我最爱的人的名字?">我最爱的人的名字?</option>
<option value="我最爱的电影?">我最爱的电影?</option>
<option value="我妈妈的生日?">我妈妈的生日?</option>
<option value="我的初恋日期?">我的初恋日期?</option>
</select> </td>
</tr>
<tr>
<td class=pad height="40" valign="top">密码答案: <FONT color=#cb6f00>
<input name="answer" type="text" id="answer" size="20" style="font-size: 9pt"></FONT> </td>
</tr>
<tr>
<td class=pad> <input onClick="return check();" type="submit" name="Submit3" value="提 交" >
<input type="reset" value="重 置" ></td>
</tr>
</form>
</table>
</div>
<table width="10" border="0" align="center" cellpadding="0" cellspacing="0" id="table138">
<tr>
<td height="7"></td>
</tr>
</table></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellSpacing="0" cellPadding="0" width="955" align="center" border="0" id="table135">
<tr>
<td width="15">
<img id="class_r4_c7" height="18" alt="" src="<%=theme%>class_r4_c1.jpg" width="15" border="0" name="class_r4_c7"></td>
<td width="924" background="<%=theme%>class_r4_c2.jpg"> </td>
<td>
<img id="class_r4_c8" height="18" alt="" src="<%=theme%>class_r4_c6.jpg" width="16" border="0" name="class_r4_c8"></td>
</tr>
</table>
</div>
<%case "save"%>
<!--#include file="md5.asp"-->
<%call saveuser()%>
<%
end select%>
<!--#include file="service.asp"-->
<!--#include file="copyright.asp"-->
</body>
</html>
<%sub tiaoyue()
set rs=server.CreateObject("adodb.recordset")
rs.Open "select regtiaoyue from shop_config",conn,1,1
response.Write trim(rs("regtiaoyue"))
rs.Close
set rs=nothing
end sub
sub saveuser()
'//判断cookise时间
if session("regtimes")=1 then
response.Write "<script language=javascript>window.location.reload('err.asp?action=logintime')</script>"
response.End
end if
'//判断是否正确验证码
if cstr(session("getcode"))<>cstr(trim(request("verifycode"))) then
response.Write "<script LANGUAGE='javascript'>alert('点创商城系统提示:请输入正确的验证码!');history.go(-1);</script>"
response.End
end if
set rs=server.CreateObject("adodb.recordset")
rs.open "select username,useremail from [user] where username='"&trim(request("username"))&"' or useremail='"&trim(request("useremail"))&"'",conn,1,1
if not rs.eof and not rs.bof then
call usererr()
rs.close
else
rs.close
rs.open "select * from [user]",conn,1,3
rs.addnew
rs("tp")=trim(request("tp"))
rs("username")=trim(request("username"))
rs("userpassword")=md5(trim(request("userpassword1")))
rs("useremail")=trim(request("useremail"))
rs("quesion")=trim(request("quesion"))
rs("answer")=md5(trim(request("answer")))
rs("userzhenshiname")=trim(request("userzhenshiname"))
rs("adddate")=now()
rs("lastlogin")=now()
rs("logins")=0
rs("youbian")=0
rs("zhifufangshi")=0
rs("songhuofangshi")=0
rs.update
rs.close
set rs=nothing
response.Cookies("bookshop")("username")=trim(request("username"))
response.Cookies("bookshop").expires=date+1
session("regtimes")=1
session.Timeout=1
response.Write "<script language=javascript>window.location.reload('err.asp?action=regok')</script>"
end if
end sub
sub usererr()
response.Write "<script language=javascript>window.location.reload('err.asp?action=errreg')</script>"
end sub
%>
<SCRIPT LANGUAGE="JavaScript">
<!--
function check()
{
if(checkspace(document.userinfo.username.value)) {
document.userinfo.username.focus();
alert("用户名不能为空,请重新输入!");
return false;
}
if(checkspace(document.userinfo.username.value) || document.userinfo.username.value.length < 4) {
document.userinfo.username.focus();
alert("用户名长度不能小于4,请重新输入!");
return false;
}
if(checkspace(document.userinfo.userpassword.value) || document.userinfo.userpassword.value.length < 6) {
document.userinfo.userpassword.focus();
alert("密码长度不能小于6,请重新输入!");
return false;
}
if(document.userinfo.userpassword.value != document.userinfo.userpassword1.value) {
document.userinfo.userpassword.focus();
document.userinfo.userpassword.value = '';
document.userinfo.userpassword1.value = '';
alert("两次输入的密码不同,请重新输入!");
return false;
}
if(document.userinfo.useremail.value.length!=0)
{
if (document.userinfo.useremail.value.charAt(0)=="." ||
document.userinfo.useremail.value.charAt(0)=="@"||
document.userinfo.useremail.value.indexOf('@', 0) == -1 ||
document.userinfo.useremail.value.indexOf('.', 0) == -1 ||
document.userinfo.useremail.value.lastIndexOf("@")==document.userinfo.useremail.value.length-1 ||
document.userinfo.useremail.value.lastIndexOf(".")==document.userinfo.useremail.value.length-1)
{
alert("Email地址格式不正确!");
document.userinfo.useremail.focus();
return false;
}
}
else
{
alert("Email不能为空!");
document.userinfo.useremail.focus();
return false;
}
}
function checkspace(checkstr) {
var str = '';
for(i = 0; i < checkstr.length; i++) {
str = str + ' ';
}
return (str == checkstr);
}
//-->
</script>
<script language=javascript>
function check_user_exists(form){
username=form.username.value;
if (username==null||username==''){
alert("请您输入用户名");
return false;
}
if(checkspace(document.userinfo.username.value) || document.userinfo.username.value.length < 4) {
document.userinfo.username.focus();
alert("用户名长度不能小于4位,请重新输入!");
return false;
}
infoBoard=document.getElementById("checkInfo");
infoBoard.innerText='查询中...';
//myurl=location.protocol+"//"+location.hostname+"/a.asp?username="+username;
var myurl = "member_chk.asp?username=" + username;
retCode=openUrl(myurl);
switch(retCode){
case "-2":
infoBoard.innerHTML='<font color=red>抱歉</font>,查询失败';break;
case "1":
infoBoard.innerHTML='<font color=red>恭喜</font>,'+username+'可以使用<img border="0" src="<%=theme%>true.gif">';break;
case "0":
infoBoard.innerHTML='<font color=red>抱歉</font>,用户名'+username+'已经被使用<img border="0" src="<%=theme%>not.gif">';
}
return;
}
function openUrl(url){
var objxml=new ActiveXObject("Microsoft.XMLHttp")
objxml.open("GET",url,false);
objxml.send();
retInfo=objxml.responseText;
if (objxml.status=="200"){
return retInfo;
}
else{
return "-2";
}
}
</script>
l 用户管理:
<!--#include file="conn.asp"-->
<%if session("admin")="" then
response.Write "<script language='javascript'>alert('网络超时或您还没有登陆!');window.location.reload('login.asp')</script>"
response.End
else
if session("flag")>1 then
response.Write "<div align=center><font size=80 color=red><b>您没有此项目管理权限!</b></font></div>"
response.End
end if
end if%>
<html>
<head><!--#include file="menu.asp"-->
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="../css/css.css" rel="stylesheet" type="text/css">
</head>
<body>
<%'开始分页
Const MaxPerPage=20
dim totalPut
dim CurrentPage
dim TotalPages
dim j
dim sql
if Not isempty(request("page")) then
currentPage=Cint(request("page"))
else
currentPage=1
end if
dim namekey,checkbox,action
action=request.QueryString("action")
checkbox=request("checkbox")
namekey=request("namekey")
if namekey="" then namekey=request.QueryString("namekey")
if checkbox="" then checkbox=request.querystring("checkbox")
'//
set rs=server.CreateObject("adodb.recordset")
if namekey="" then
rs.open "select username,userid,userzhenshiname,logins,adddate,vip from [user] ",conn,1,1
else
if checkbox=1 then
rs.open "select username,userid,userzhenshiname,logins,adddate,vip from [user] where username like '%"&namekey&"%' ",conn,1,1
else
rs.open "select username,userid,userzhenshiname,logins,adddate,vip from [user] where username='"&namekey&"' ",conn,1,1
end if
end if
if err.number<>0 then
response.write "数据库中无数据"
end if
if rs.eof And rs.bof then
Response.Write "<p align='center' class='contents'> 对不起,没有找到此用户!</p>"
else
totalPut=rs.recordcount
if currentpage<1 then
currentpage=1
end if
if (currentpage-1)*MaxPerPage>totalput then
if (totalPut mod MaxPerPage)=0 then
currentpage= totalPut \ MaxPerPage
else
currentpage= totalPut \ MaxPerPage + 1
end if
end if
if currentPage=1 then
showContent
showpage totalput,MaxPerPage,"manageuser.asp"
else
if (currentPage-1)*MaxPerPage<totalPut then
rs.move (currentPage-1)*MaxPerPage
dim bookmark
bookmark=rs.bookmark
showContent
showpage totalput,MaxPerPage,"manageuser.asp"
else
currentPage=1
showContent
showpage totalput,MaxPerPage,"manageuser.asp"
end if
end if
end if
sub showContent
dim i
i=0
%>
<div align="center">
<table width="90%" border="0" cellspacing="1" bgcolor="#BCD7E0">
<tr>
<td background="../images/manage/line_all.gif"><div align="center"><font color="#000000">网站用户管理(全部)</font></div></td>
</tr>
<tr><form name="form1" method="post" action="saveuser.asp?action=del">
<td height="237" valign="top" bgcolor="#F8FCFD"><br>
<div align="center">
<table width="90%" border="0" cellspacing="1" bgcolor="#BCD7E0">
<tr>
<td bgcolor="#F8FCFD" align="center"><div align="center">用户名</div></td>
<td bgcolor="#F8FCFD" align="center"><div align="center">真实姓名</div></td>
<td bgcolor="#F8FCFD" align="center"><div align="center">注册时间</div></td>
<td bgcolor="#F8FCFD" align="center"><div align="center">登陆次数</div></td>
<td bgcolor="#F8FCFD" align="center"><font color="#FF0000">vip</font></td>
<td bgcolor="#F8FCFD" align="center"><div align="center">选 择</div></td>
</tr>
<%do while not rs.eof%>
<tr>
<td bgcolor="#F8FCFD" align="center"><div align="center"><a href=listuser.asp?id=<%=rs("userid")%>><%=trim(rs("username"))%></a></div></td>
<td bgcolor="#F8FCFD" align="center"><div align="center"><%=trim(rs("userzhenshiname"))%></div></td>
<td bgcolor="#F8FCFD" align="center"><div align="center"><%=rs("adddate")%></div></td>
<td bgcolor="#F8FCFD" align="center"><div align="center"><%=rs("logins")%>次</div></td>
<td bgcolor="#F8FCFD" align="center"><%if rs("vip")=0 then%>
<%else%>VIP
<%end if%></td>
<td bgcolor="#F8FCFD" width="79" align="center"><div align="center">
<input name="userid" type="checkbox" id="userid" value="<%=rs("userid")%>" >
</div></td>
</tr>
<%i=i+1
if i>=MaxPerPage then Exit Do
rs.movenext
loop%>
</table> </div>
<br><br>
<div align="center">
<input type="submit" name="Submit" value="删除所选用户" onClick="return confirm('您确定要这样操作吗?')">
全选
<input type="checkbox" name="checkbox" value="Check All" onClick="mm()"><br>
</div>
</td>
</form>
</tr>
</table></div>
<%
End Sub
Function showpage(totalnumber,maxperpage,filename)
Dim n
If totalnumber Mod maxperpage=0 Then
n= totalnumber \ maxperpage
Else
n= totalnumber \ maxperpage+1
End If
Response.Write "<form method=Post action="&filename&"?checkbox="&checkbox&"&namekey="&namekey&">"
Response.Write "<p align='center' class='contents'> "
If CurrentPage<2 Then
Response.Write "<font class='contents'>首页 上一页</font> "
Else
Response.Write "<a href="&filename&"?page=1&checkbox="&checkbox&"&namekey="&namekey&" class='contents'>首页</a> "
Response.Write "<a href="&filename&"?page="&CurrentPage-1&"&checkbox="&checkbox&"&namekey="&namekey&" class='contents'>上一页</a> "
End If
If n-currentpage<1 Then
Response.Write "<font class='contents'>下一页 尾页</font>"
Else
Response.Write "<a href="&filename&"?page="&(CurrentPage+1)&"&checkbox="&checkbox&"&namekey="&namekey&" class='contents'>"
Response.Write "下一页</a> <a href="&filename&"?page="&n&"&checkbox="&checkbox&"&namekey="&namekey&" class='contents'>尾页</a>"
End If
Response.Write "<font class='contents'> 页次:</font><font class='contents'>"&CurrentPage&"</font><font class='contents'>/"&n&"页</font> "
Response.Write "<font class='contents'> 共有"&totalnumber&"名注册用户 "
Response.Write "<font class='contents'>转到:</font><input type='text' name='page' size=2 maxlength=10 class=smallInput value="¤tpage&">"
Response.Write " <input type='submit' class='contents' value='GO' name='cndok'></form>"
End Function
%>
<!--#include file="copyright.asp"-->
</body>
</html>
<script language=javascript>
function mm()
{
var a = document.getElementsByTagName("input");
if(a[0].checked==true){
for (var i=0; i<a.length; i++)
if (a[i].type == "checkbox") a[i].checked = false;
}
else
{
for (var i=0; i<a.length; i++)
if (a[i].type == "checkbox") a[i].checked = true;
}
}
</script>
第六章 总结
这次课程项目设计,让我受益良多,在这个项目中,我们学到了技能,更重要的是学到一种团队精神,一种分享收获的喜悦,一个小组一个团队要有统一的目标,统一的意见,和一个优秀的领导人,这样才能更有效的完成我们前进中遇到的难题和困难。
实训一开始,我们就很高兴,因为我们做的网站也是我们学习最终的目标,也许我们现在的专业知识还不够,也许在页面的处理上还不够成熟,但是我们做的是我们的兴趣所在,大家都很努力。经过大家的讨论最终我们确定了“天下书城”这个项目,主要的原因也是由于,现在的网购特别流行,以及人们对知识的渴望是永不过时的。经过几天在网上搜集资料,以及我们对做这个网站的前期调查,我们开始分工合作,一个人的力量是小的,一个团队只要是大家齐心协力就一定能做好。
通过这次实训,我们掌握了课本外的实际知识,将书本上理论的知识付诸于行动,通过我们有着共同爱好的小组一起完成了这次实训内容。同时也感谢老师,在老师的精心组织下,我们组顺利完成了规定任务。实训是短暂的,但它让我们学到了平常在书本上没能学到的动手方面的实践,那也是我们毕业前与社会工作的接触,它让我们感受集体的力量,感受了与社会类似的工作,为我们毕业后的社会工作做好准备。
参考文献
[1] 刘清怀,庞娅娟. ASP网络开发实例自学手册. 南京: 人民邮电出版社。
[2] 戎马,ASP与SQL Server动态网站开发自学导航
[3] www.baidu.com