毕业论文同学录管理系统.doc_第1页
毕业论文同学录管理系统.doc_第2页
毕业论文同学录管理系统.doc_第3页
毕业论文同学录管理系统.doc_第4页
毕业论文同学录管理系统.doc_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

同学录管理系统姓 名: 罗文斌 学 号: 120911025 专 业: 计算机科学与技术 班 级: 12计本 指导教师: 龙老师 2015年 6 月 22 日 目 录1 引言11.1背景和意义11.2系统概况11.3 研究内容、目标及意义12系统分析与设计12.1 系统分析12.1.1 系统初步调查22.1.2 系统需求分析22.2 系统设计22.2.1 系统概要设计32.2.2 系统详细设计43系统实现73.1 开发工具的选择73.1.1 ASP开发平台73.1.2 Mircrosoft SQL Server 200883.2 程序设计93.2.1 程序设计概要93.2.2 功能模块的实现93.2.3 设计结果16231 引言1.1背景和意义 随着Internet的迅速普及,网上同学通讯录已经得到了广泛的应用。通过这种公开的通讯录寻找自己同学的联系方式,比起辗转的询问要方便得多。借助这种方便、快捷的联系方式,即使是远在天涯海角的学生也能够及时地得到以前同学的信息,极大地缩短了时间和空间的距离。而同学录管理系统还增加了其它功能,它把同学通讯录涵盖在内进行管理,不仅仅只是个通信录。并且随着同学录管理功能不断完善,它变成是高中、大学等毕业后各奔东西的同班同学保持联系和交流感情的重要工具之一,同学录管理的整体发展处于上升期,也像QQ一样,逐渐成为年轻人的时尚,必将使人享受不同于以往通信录的乐趣。1 1.2系统概况本系统的服务主要包括:通信录、班级管理、短消息、留言板(或论坛)等。后台可以对本系统的各种信息进行维护管理。系统前台用户通过注册后可以访问前台界面,登录网站界面,进行通讯交流;但是系统后台只有管理员身份才能进入。管理员通过身份密码验证,进入到后台管理系统,方能对本系统的各个信息进行维护和管理,包括增、删、改基本信息的操作。1.3 研究内容、目标及意义该课题为设计并实现一个基于ASP技术的动态网络同学录网站。该网站主要具有如下模块:1.登录信息管理:包含用户注册、用户登录和修改个人信息功能。2.班级信息管理:包含班级的创建和维护功能,以及班级照片管理功能。3.通信录的管理:包含添加、查看、修改和删除教师与学生的通信录。4.留言消息管理:包含发表、编辑、查看和删除留言消息功能。5.管理员的功能:对注册用户和用户建立的班级进行管理并对网站的参数进行定义的功能。网站建设的主要基本目标为:1.登录信息管理:对于普通用户,只有通过用户注册,注册成功后才可以登录本系统;用户还可以通过修改个人信息功能对自己的信息加以修改。而管理员通过登录,实现对网站更好的服务和管理。2.班级信息管理:通过对班级管理员的申请,进行对班级的信息,成员进行管理。3.通信录的管理:通过添、删、改等基本操作完善教师与学生的通讯信息。4.留言信息管理:通过添、删、改等基本操作用户可以留言;或发表论坛新主题,对其主题进行回复,当然还可以进行编辑、删除主题与回复,从而实现论坛上的交流。5.管理员的功能:通过此功能实现对注册用户和用户建立的班级进行管理并对网站的参数进行定义。2系统分析与设计2.1 系统分析系统分析阶段的目标就是在系统规划所定的某个开发项目范围内明确系统开发的目标和用户的信息需求,提出系统的逻辑方案。系统分析在整个系统开发过程中,是要解决“做什么”的问题,提出逻辑方案,为了下一阶段进行物理方案设计,解决“怎么做”提供依据。22.1.1 系统初步调查系统初步调查是系统分析阶段的第一项活动,它的主要目标是从系统分析人员和管理人员的角度看新项目开发有无必要和可能。系统初步调查采用的主要方式是系统分析人员与各种学生进行交流,分析同学录管理系统建立的需求度。经过初步调查了解到,由于互联网的发展与普及,同学录作为一种方便校友之间联系的实用系统,在现实生活中应该得到广泛的应用。特别是在提倡终生教育的今天,随着人的教育经历的增长,同学是越来越多,因此同学信息的管理是我们每个人成长中必须管理的信息。2.1.2 系统需求分析经过调研确定,同学录管理系统要完成的基本功能是同学间的相互交流。其内容主要有班级管理、留言板(或论坛)、短消息、通信录和用户管理等。一个学校的同学是以班级为单位进行划分的,需要对班级信息、班级成员等进行管理,所以班级管理是本系统必不可少的一部分。而且其中的班级相册也是极受使用者欢迎的内容。在现在有条件使用扫描仪和拥有数码相机的人群中更是如此。将图片上传至同学录免去了邮寄照片的不便,而且通过同学录这一全班都会关注的方式,有利于图片信息的公开和传播。同学录在这里体现了超文本和信息便捷公开的优势,对于毕业后奔向天南海北的高中同学具有很强的吸引力。多数人都有在同学录上留言(或发表论坛)的习惯,因此留言(或论坛)管理也是同学录的基本需求。而且留言板(或论坛)是通信录使用人数最多的功能。留言板(或论坛)内容是同学录使用者最为关注的信息,也是通过同学录最便捷地获取信息的手段。大学生活和同学近况是同学录上最常见的讨论话题。与聊天室不同的是,留言板不要求使用者在同一时间内使用,所有信息会以文本的方式保留下来,并且用户可以方便地查询到很久以前的留言。诸多优点使得留言板(或论坛)成为同学录最受欢迎的内容,甚至是很多同学录唯一有人使用的内容。通过短消息的收发,实现发送者与接收者之间的信息传送,此功能也让许多人喜欢。而同学录上公开的通讯录,让人方便寻找自己同学的联系方式。另外和大多数系统一样,同学录管理系统也需要进行用户管理。由于前台用户的这些需求,后台系统就应该对相关信息进行必要的维护:对同学录的基本参数进行设定与修改操作;对用户积分进行设定与修改操作,对用户信息进行核查操作;对班级信息及动态进行核查管理操作;对短消息发布于管理进行操作,还有定期批量删除短消息操作。最后,后台还应该及时做好数据更新操作。2.2 系统设计系统设计是在系统分析的基础上由抽象到具体的过程,同时,还应考虑到系统所实现的内外环境和主客观条件,本着实事求是的态度进行这一阶段的工作。系统设计阶段的主要目的是将系统分析阶段所提出的反映用户信息需求的系统逻辑方案转换成可以实施的基于计算机与通信系统的物理方案。这一阶段的主要任务就是从管理信息系统的总体目标出发,根据系统分析阶段对系统的逻辑功能的要求,并考虑到经济、技术和运行环境等方面的条件,确定系统的总体结构和系统各组成部分的技术方案,合理选择计算机和通信的软、硬件设备,提出系统的实施计划,确保系统总体目标的实现。系统设计分为两部分:系统概要设计和系统详细设计。2.2.1 系统概要设计系统概要设计即系统的总体结构设计。主要是指设计出整个系统由哪些部分组成,以及各部分在物理上、逻辑上的相互关系。为了实现系统的总体功能,提高系统的各项指标,总体结构设计的主要任务是将整个系统合理的划分为各个功能模块,正确地处理模块之间与模块内部的联系以及它们之间的调用关系和数据联系,定义整个模块的内部结构。同学录管理系统系统结构图:图2-1 系统结构图1.模块详细功能描述(1)登录管理:用户注册功能用于新用户的注册,只有注册成功的用户才可以登录本系统;新注册地用户只有查询公开数据的权限,如果想获得更高的权限,如班级管理,在满足一定得条件下,进行申请。用户登录功能,根据输入的用户名和密码判断该用户是否合法以及具有的操作权限,并根据不同的情况返回不同的结果。用户登录后除了可以查询一些公开信息外,还可以通过修改个人资料功能修改自己的信息,如密码、生日日期、电子邮件、联系号码等。(2)班级管理:用户可以通过创建班级功能创建新的班级,以及加入已经存在的班级。进入加入的班级后,可以查看该班级的班级心声(留言)、班级相册、班级名片册、教师通讯录等信息。用户还可以通过班级相册功能进行上传照片和评论照片等。通过班级管理员申请的用户,可以通过班级维护功能维护班级信息和对班级成员进行管理。当然用户还可以辞去班级管理员身份或转让此身份,也可以通过班级注销退出班级。(3)通讯录管理:普通用户在进入加入的班级后不仅可以查看已有的通讯录,还可以通过附加同学通讯录和附加教师通讯录的功能进行添加,对自己添加的通讯录的信息还可以进行修改和删除操作。班级管理员除了可以添加通讯录外,还可以对所有的通讯录进行修改和删除操作。(4)留言消息管理:用户可以查看自己的班级留言,也可以查看论坛上发表的主题,以及其他同学回复此主题的留言。当然用户可以添加留言,回复论坛上的主题,也可以发表新主题。普通用户只可以对于自己的留言(或论坛)进行编辑和删除操作,但管理员除了有普通用户的功能外,还可以对任何留言进行编辑和删除操作。而用户都可以通过短消息接收功能,实现对发送者和接受者之间的信息交流。(5)管理员功能:系统管理员除了有以上普通用户的功能外,还有拥有班级管理员一样的功能。当然还有系统管理员特有的功能,可以通过网站参数设置功能对同学录的基本参数和用户积分进行设置;通过注册用户(班级)管理功能,对整个同学录得所有用户(班级)进行管理,删除和合法的用户(班级)。2.2.2 系统详细设计1.代码设计1.1模块化设计5 模块化设计的要求不仅是为了提高代码的重用性,更重要的是为了提高代码的可维护性和稳定性。一个模块化程度高、结构清晰的应用程序,在程序维护时的便利性是可想而知的。在最初设计方案时,就要规划好哪些模块是可以提出来多次使用,哪些模块虽然只使用一次,但提出之后使代码更清晰等。一般地,在一个Web应用程序中,可以模块化的部分有几种:(1) 每页的头、尾要重复使用多次,可以分别单独做成一个文件。(2) 页面的左侧有时也可以独立出来,作为一个独立的文件供几个不同的页面使用。(3) 页面的整体布局。一般地,为了整个网站的风格一致,事先设计一个整体的页面布局,然后只要填充不同的栏目和内容即可。(4) 链接数据库代码也可以放到一个文件中,就是大家常见的conn.asp之类的文件。(5) 其他常用的功能,如分页、上传和下载等,可以做成单独的模块,在将来重复利用。1.2目录组织5目录结构组织中,也尽量按模块功能来分类,如将公共模块放入一个名为Inc或Include的文件夹中,将图片放到Img或images文件夹中,将后台管理放到Admin或Manage文件夹中。一般地,在一个Web应用程序中,目录结构可做如下规划:(1) Web应用程序总文件夹。(2) 如果使用Acess数据库,则需要数据库文件夹(放在虚拟目录外部,防止下载数据库)。(3) Web应用程序文件夹(虚拟目录内部)。include:公共文件、CSS文件、JS文件。images:页面中用到的图片文件夹。uploadImages:上传后的图片文件夹。upload:上传的其他文件。admin:后台管理文件夹。(4) 如果还要其他目录,可以根据功能创建目录,比如考试系统中要创建相应的学生、老师等目录。(注意:以上的“”表示下一级目录。)1.3尽量将页面代码与脚本代码分离5在一个页面中,如果ASP脚本代码与HTML页面代码混杂在一些,不仅极不方便将来的维护,而且会导致页面执行效率大大降低。合理的解决办法是采用Include语句将其包含进来,而且将ASP脚本代码再在一页的最前面,在HTML代码中只需要用引用ASP脚本的执行结果即可。一个将ASP脚本与HTML代码放在同一个文件中的典型结构如下图2-2所示:图2-2本系统代码管理就是遵循以上原则,将代码模块化,并且以目录结构组织起来,分成如下目录:(1) Web应用程序classmates总文件夹。(2) 存放SQL数据库的文件夹。(3) Web应用程序文件夹(虚拟目录内部)。include:存放公共代码的文件夹。class:存放普通用户代码的文件夹。admin:存放后台管理的文件夹。css:存放页面中用到的层叠样式文件夹。images:存放页面中用到的图片文件夹。mood:存放页面中用到的心情图片文件夹。face:存放页面中用到的头像图片文件夹。star:存放页面中用到的星座图片文件夹。photo:存放上传后的图片文件夹。script:存放代码中用到的脚本文件夹。并且在书写代码时,也尽量将页面代码和脚本代码分离,尽量做到代码可维护性和稳定性。2. 数据库设计几乎所有的WEB项目都是基于数据库的,这使得数据的设计在整个项目中的地位举足轻重。相关研究表明,在数据应用系统的开发中,项目成功50%靠数据库的设计。良好的数据设计往往能够减少开发的负担。3数据库设计是指对于一个给定的应用环境,通过合理的逻辑设计和有效的物理设计来构造较优的数据库模式,建立数据库极其应用系统,满足用户的各种信息需求。针对本系统将要实现的功能,数据库中应该具有以下的信息:(1) 管理员信息:用来存储管理员用户名和密码。(2) 班级信息: 用来查看或注册班级,其中应该包括的必要信息如:班级编号,班级名称,学生数,班级注册日期,建立人和班级管理员等。(3) 教师信息: 包括教师编号,教师姓名,电子邮件,联系电话,通信地址和其他信息等。(4)学生信息: 用来存储学生的具体信息,如用户名,真实姓名,密码,生日,电子邮件,联系电话,工作单位,通信地址,注册日期等。(5) 班级成员信息: 用来存储已经加入的某个班级的学生,其中包括的信息有:学生编号,班级编号,学生加入日期,学生最后访问日期和学生访问次数等。(6) 班级留言本信息:用来存储相关留言的信息,如留言标题,留言内容,留言人,留言时间等。(7) 班级相册信息: 用来存储相关上传的图片的信息,如图片名,图片大小,图片类别,上传人,图片标题,图片说明和上传时间等。(8) 短消息信息: 用来发送、接收和查看短消息,包括发送人,接收人,标题,内容,是否查看,是否删除到垃圾箱和是否已发送等信息。针对具体需求,可规划出的实体有:学生实体、班级实体、班级相册实体、短消息实体、留言板实体、教师实体。 而实体之间关系的E-R图如图2-3所示:图2-3实体之间关系的E-R图因此,本系统主要涉及8张表,分别是:管理员表admin、班级表class、教师表teacher、学生表student、班级成员表joinclass、班级留言本表classboard、班级相册表photo、短消息表message(详细表结构设计见附录1)。3.处理过程设计处理过程设计要根据模块划分以及结构化程序设计的基本原则,对每个程序模块中的详细处理过程进行设计,常用的设计工具有程序流程图、结构化流程图(N-S图)、过程设计语言、判定树和判定表等。由于程序流程图是一种用尽可能少、尽可能简单的方法来描述系统处理过程的方法;而且它的符号简单明了,非常易于阅读和理解系统处理流程。所以本系统中采用的是程序流程图,如图2-4所示:图2-4 系统流程图3系统实现系统实施是继系统规划、系统分析、系统设计之后的又一个重要阶段,它将按照系统设计选定的方案具体实施。在系统分析和系统设计阶段,系统开发工作主要是集中在逻辑、功能和技术设计上,工作成果是以各种系统分析和设计文档来体现的。系统实施阶段要继承此前各阶段的工作成果,将技术设计转化为物理实现。这一阶段包括开发工具的选择,功能模块的实现等主要活动。3.1 开发工具的选择程序设计的编写是以程序设计语言为工具的,并要选择适当的程序设计语言。本系统的软件开发工具选用了ASP,后台数据库选用Mircrosoft SQL Server 2008。3.1.1 ASP开发平台随着计算机技术和网络技术的不断发展,人们对网络的要求也越来越高。传统的静态网页技术已不能满足广大互联网用户的需要,各种动态网页技术应运而生。ASP即Active Server Pages的缩写,它是一种在服务器端解释脚本,且与浏览器无关的动态网页开发技术。当用户浏览ASP网页时,Web服务器会根据浏览器发出的请求动态地生成相应的HTML代码,然后将结果返回给浏览器。这样的过程减轻了客户端浏览器的负担,提高了交互的速度。4正因为如此,ASP变成是目前网页制作中最常用的重要技术之一,许多网站都使用ASP 制作网页。ASP并不是一种编程语言,而是一种综合的网络解决方案,它允许用户根据自己的习惯采用不同的语言环境,在服务器端经过语言解释器的解释或 HTML 代码发送给客户端。 11.ASP技术具有以下特点:1. 使用VBScript或JavaScript等简单易懂的脚本语言,结合HTML代码,就可快速地完成网站的应用程序。2. ASP脚本集成于HTML当中,容易生成,无须编译,可在服务器端直接解释执行。3. 使用普通的文本编辑器,如Windows的记事本,就可以编辑设计ASP网页。但是,利用具有可视化编辑功能的工具软件更有效率,功能也更完善。4. ASP脚本在服务器端执行,与客户端浏览器无关(Browser Independence),客户端只要使用可执行HTML码的浏览器,就可浏览Active Server Pages 所设计的网页内容。ASP所使用的脚本语言(VBScript,JavaScript)均在WEB服务器端执行,客户端的浏览器不需要安装任何附加软件就能够执行这些脚本语言。 5. ASP能与任何ActiveX Scripting 语言兼容。除了可使用VBScript 或者JavaScript语言来设计外,还可通过plug-in的方式,使用由第三方所提供的其他脚本语言,譬如REXX、Perl、Tcl等。脚本引擎是处理脚本程序的COM(Component Object Model)对象。6. ASP脚本在服务器端执行,源程序代码不会传送到客户端。用户浏览器显示的是ASP执行结果所生成的HTML页面,这样可以防止程序源代码被盗取。并且可使用服务器端的脚本来产生客户端的脚本。7. ActiveX Server Components (ActiveX 服务器组件)具有无限可扩充性。可以使用Visual Basic、Jaca、Visual C+、COBOL等程序设计语言来编写你所需要的ActiveX Server Component。3.1.2 Mircrosoft SQL Server 2000SQL即Structured Query Language ,即结构化查询语言,是关系数据库的标准语言,SQL是一个通用的、功能极强的关系数据库语言。其功能并不仅仅是查询。当前,几乎所有的关系数据库管理系统软件都是SQL,许多软件厂商对SQL基本命令集还进行了不同程度的扩充和修改。8SQL集数据定义语言DDL、数据操纵语言DML、数据控制语言DCL的功能与一体,语言风格统一,可以独立完成数据库生命周期中的全部活动。SQL语言高度非过程化,在进行数据操作,只要提出“做什么”,无须指明“怎么做”,因此无需了解存取路径。存取路径的选择以及SQL的操作过程由系统自动完成。这不但大大减轻了用户负担,而且有利于提高数据独立性。SQL是面向集合的操作方式,不仅操作对象、查找结果可以使元组的集合,而且一次插入、删除、更新操作的对象也可以是元组的集合。SQL以同一种语法结构提供多种使用方式,既是独立的语言,又是嵌入式语言。作为独立的语言,它能够独立地用于联机交互的使用方式,用户可以再终端键盘上直接键入SQL命令对数据库进行操作;作为嵌入式语言,SQL语句能够嵌入到高级语言(例如C,C+,Java)程序中,供程序员设计程序时使用。而在这两种不同的使用方式下,SQL的语法结构基本上是一致的。这种以统一的语法结构提供多种不同实验方式的做法,提供了极大地灵活与方便性。SQL功能极强,但由于设计巧妙,语言十分简洁,完成核心功能只用了select、create、drop、alter、insert、update、delete、grant、revoke等9个动词;而且接近英语口语,因此容易学习,容易使用。8SQL具有以上主要特点,也以其强大的功能、友好的界面吸引众多的用户,是当今流行的数据库软件之一。 3.2 程序设计3.2.1 程序设计概要程序设计又称编码,为了保证编码工作正确而顺利进行,一方面程序设计人员必须仔细阅读系统设计的全部文档资料,充分理解程序模块的内部过程和外部接口,以保证系统实施与系统设计的一致性。另一方面,程序设计人员必须深刻的理解,熟练的掌握和正确的运用程序设计语言以及软件开发环境和工具,以保证功能的正确实现。对程序设计的基本质量要求是程序的正确性,即一方面正确运用程序设计语言环境,以避免语法的错误。另一方面,程序所描述的过程和算法要满足系统设计的功能要求,以避免语义错误。我们尽量使程序不仅能在计算机上正确执行,而且对于阅读人来说犹如一篇好文章,结构清晰,逻辑简明,易读易懂,便于修改和扩充。3.2.2 功能模块的实现 本系统由前台系统和后台管理系统系统组成。前台系统主要实现用户加入班级并参与到班级活动中,主要可以给班级同学留言、上传图片到班级,并且可以查阅同学及教师的联系信息等。后台系统主要实现对注册用户和用户建立的班级进行管理并对网站的参数进行定义。 前台系统主要有用户登录管理,班级信息管理,通讯录管理,留言消息管理等模块。1.登录管理模块用户登录功能主要是根据用户输入的登录信息进行判断,若 session(fyuser)等于“userid”以及session(fypwd)等于“userpwd”,则合法登录;否则登录失败。界面如图3-1所示,主要代码如下:function chkuserlogin(byval txluser,byval txlpwd)dim tmprsdim founderr,errormsgchkuserlogin=set tmprs =conn.execute(select userpwd,locked from student where userid=&txluser&)if tmprs.EOF and tmprs.bof thenErrormsg=Errormsg+对不起,您还没有注册!founderr=trueelseif txlpwdtmprs(userpwd) thenErrormsg=Errormsg+密码错误!请重新登录!founderr=trueelseif tmprs(locked)=true thenErrormsg=Errormsg+对不起,您的同学录帐号已被锁定,若有任何问题,请与系统管理员联系!founderr=trueend ifset tmprs=nothingif founderr=true thenchkuserlogin=errormsgend ifend function 用户注册功能用于新用户的注册,只有注册成功的用户才可以登录本系统,文件register.asp为用户注册所看到的页面,如图3-2所示。图3-3为注册成功所看到的页面。文件MyModify.ASP为个人资料修改页面,已经注册的用户可以对自己的个人信息加以修改,比如修改登录密码、生日日期、电子邮件、电话号码、工作地点等内容。具体如图3-4所示。2.班级管理模块普通用户可以通过注册班级RegClass.ASP加入班级(注册班级界面如图图3-5所示),进入班级可以查看班级信息,班级生日榜,班级名片册,教师通讯录等内容。而通过申请成为班级管理员的普通用户,还可以对班级各类信息进行修改,如班级是否公开,是否加密,是否锁定等;对班级成员进行管理,如踢出成员,审查通过成员等。而对于班级相册ClassAlbum.asp,班级成员都可以进行查看,评论,上传,删除编辑自己上传的照片等。主要界面如图3-6所示。3. 通讯录管理模块通讯录管理模块主要管理同学和老师的通讯信息,包括对这些通讯信息查看、增加、删除、修改等。界面如图3-7所示,AppendList.asp文件中的主要代码如下:如果不是建立通讯录的人,没有修改权限sql=select collector from append where id=&appendidset rs=conn.execute(sql)if rs(0)membername and not sysadmin and isclassadmin(0)=0 thenerrmsg=errmsg+操作失败!您没有操作权限!founderr=truecall error(Exclamation,errmsg)exit subend if 添加通讯信息需要注意的内容 if chkpost=false thenErrMsg=ErrMsg+您提交的数据不合法,请不要从同学录外部提交信息。call error(Critical,errmsg)chkinput=falseexit functionend ifname=trim(request.form(name)if name= thenerrmsg=errmsg+请输入同学姓名founderr=trueelseif strlength(name)8 thenerrmsg=errmsg+同学姓名输入有误founderr=trueelseif not isChinese(name) thenerrmsg=errmsg+同学姓名应为汉字founderr=trueend ifif founderr=true thencall error(Information,errmsg)chkinput=falseexit functionend iftelephone=trim(request.form(telephone)address=trim(request.form(address)if telephone= and address= thenerrmsg=errmsg+对不起,您至少应留下一种与该同学联系的通信方式!founderr=trueend ifif telephone and not IsValidTel(telephone) thenerrmsg=errmsg+电话号码输入错误founderr=trueend ifzipcode=trim(request.form(zipcode)if address and zipcode= thenerrmsg=errmsg+请输入邮政编码founderr=trueend ifif zipcode and (strLength(zipcode)6 or not isinteger(zipcode) thenerrmsg=errmsg+邮政编码输入错误founderr=trueend ifif founderr=true thencall error(Information,errmsg)chkinput=falseelsechkinput=trueend if4.留言消息管理模块留言管理主要是在班级心声中进行留言,以及对论坛进行留言;还有就是通过短消息的接收管理。留言管理ClassBoard.asp主要界面设计如图3-8所示,短消息接收管理UserSMS.asp主要界面设计如图3-9所示。主要实现代码如下:(1)留言管理主要实现代码: if request.form(title)= then Errmsg=Errmsg+请确认输入了留言主题。 founderr=trueelse title=trim(request.form(title)end if content=rtrim(request.form(content)if content= then Errmsg=Errmsg+留言内容不能为空。 founderr=trueelseif strLength(content)(MaxBoardSize*1024) then ErrMsg=ErrMsg+留言内容不得大于&MaxBoardSize&KBytes FoundErr=trueend ifend ifif founderr=true then call error(Exclamation,errmsg) session(lastpost)=Now()elsecall savedata()session(lastpost)=Now()rURL=classboard.asprtitle=发表留言成功 (2)消息管理主要实现代码: if request(touser)= thenerrmsg=errmsg+您忘记填写发送对象了吧。founderr=trueelseincept=request(touser)incept=split(incept,)end ifif request(title)= thenerrmsg=errmsg+您还没有填写标题呀。founderr=trueelsetitle=request(title)end ifif request(message)= thenerrmsg=errmsg+内容是必须要填写的噢。founderr=trueelsemessage=request(message)end ifif not founderr thenfor i=0 to ubound(incept)set rs=server.createobject(adodb.recordset)sql=select userid from student where userid=&incept(i)&rs.open sql,conn,1,1if rs.eof and rs.bof thenerrmsg=errmsg+同学录没有这个用户,看看你的发送对象写对了嘛?founderr=trueend ifrs.closeset rs=nothingif not founderr thenif request(Submit)=发送 thensql=insert into message (incept,sender,title,content,sendtime,flag,issend) values (&incept(i)&,&membername&,&title&,&message&,getdate(),0,1)subtype=已发送信息elsesql=insert into message (incept,sender,title,content,sendtime,flag,issend) values (&incept(i)&,&membername&,&title&,&message&,getdate(),0,0)subtype=发件箱end ifconn.execute(sql)if i4 thenerrmsg=errmsg+最多只能发送给5个用户,您的名单5位以后的请重新发送founderr=trueexit forend ifend ifnextif not founderr thenstitle=发送短信smsg=+恭喜您,发送短信息成功。发送的消息同时保存在您的&subtype&中。 5.管理员功能模块管理员除了有普通用户和班级管理员所有的功能外,还具有系统管理员的功能,主要实现对注册用户和用户建立的班级进行管理并对网站的参数进行定义。总体界面如图3-10所示,主要代码如下:(1)管理用户注册班级主要实现代码(而管理注册用户实现代码与此相似):sub deleteannounce(id) dim rs,sqlsql=delete from class where classid=&idconn.execute(sql)sql=select name from classboard where classid=&idset rs=conn.execute(sql)do until rs.eofsql=update student set point=point+&pDelBoard& where userid=&rs(0)&conn.execute(sql)rs.movenextloopsql=delete from classboard where classid=&idconn.execute(sql)if IsFSOInstalled thenset fso = CreateObject(Scripting.FileSystemObject)end ifsql=select name,filename from photo where classid=&idset rs=conn.execute(sql)do until rs.eofsql=update student set point=point+&pDelPhoto& where userid=&rs(0)&conn.execute(sql)if IsFSOInstalled=true thenphotofile=PhotoPath&rs(1)filepath=server.mappath(photofile)if fso.FileExists(filepath)=true thenSet file = fso.GetFile(filepath)file.delete end ifend ifrs.movenextloopif IsFSOInstalled thenset file=nothingset fso=nothingend ifsql=delete from photo where classid=&idconn.execute(sql)sql=select collector from append where classid=&idset rs=conn.execute(sql)do until rs.eofsql=update student set point=point+&pDelAppend& where userid=&rs(0)&conn.execute(sql)rs.movenextloopsql=delete from append where classid=&idconn.execute(sql)sql=update student set point=point+&pExitClass& where userid in (select userid &_from joinclass where classid=&id&)conn.execute(sql)sql=update student set point=point+&PResignAdmin& where userid in (select userid &_from joinclass where classid=&id& and degree1)conn.execute(sql)sql=update student set classcount=classcount-1 where userid in (select userid &_from joinclass where classid=&id&)conn.execute(sql)sql=delete from joinclass where classid=&idconn.execute(sql)conn.execute(update config set classes=classes-1)set rs=nothingEnd sub(2)数据更新主要实现代码:if request(option1)=1 thenset rs=conn.execute(select count(classid) from class where classname and classname is not null)conn.execute(update config set classes=&rs(0)set rs=nothingset rs=conn.execute(select count(userid) from student where userid and userid is not null)conn.execute(update config set users=&rs(0)set rs=nothingend ifif request(option2)=1 thenconn.execute(update class set studcount=0)sql=select classid,count(classid) from joinclass group by classid order by classidset rs=conn.execute(sql)do until rs.eofconn.execute(update class set studcount=&rs(1)& where classid=&rs(0)rs.movenextloopset rs=nothingend ifif request(option3)=1 thenconn.execute(update student set classcount=0)sql=select userid,count(userid) from joinclass group by userid order by useridset rs=conn.execute(sql)do until rs.eofconn.execute(update student set classcount=&rs(1)& where userid=&rs(0)&)rs.movenextloopset rs=nothingend ifif request(option4)=1 thensql=select count(bbsid) from bbs where parentid=0set rs=conn.execute(sql)sql=update config set topicnum=&rs(0)conn.execute(sql)set rs=nothingsq

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论