高校学工辅导员资料管理系统的设计和开发_第1页
高校学工辅导员资料管理系统的设计和开发_第2页
高校学工辅导员资料管理系统的设计和开发_第3页
高校学工辅导员资料管理系统的设计和开发_第4页
高校学工辅导员资料管理系统的设计和开发_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

第1章引言1.1背景本课题题目为:高校学工平台系统,目的是为辅导员提供一个保存文件,个人照片的一个网站。众所周知传统的手工管理资料需要用不同的文件袋子来存放不同的文件,没有具体的数据库可提供查询,对于这些重要文件有哪些、放在什么地方、什么时候用过的还都不知道。当用户即辅导员要看文件的时候却因为有一大堆的文件放在一起,无法很快的找到自己想要的文件,这样要浪费很多的时间。并且手工来管理这些重要文件也要耗费不少的人力,物力资源,也不符合经济效益原则。而随着信息化的发展及计算机技术的广泛运用,高等学校各部门的重要文件管理也可以考虑利用计算机管理系统来代替传统的手工管理。设计高校学工平台系统可以建立各种信息数据库,以实现高校对辅导员用户基本信息的管理,文件管理。辅导员也可以通过本系统方便的查找自己存着的重要文件,到用时就很方便了。同时此系统还为高校辅导员提供一个存放自己重要照片的一个平台,因为现在由于数码相机的普及,辅导员自己电脑上的照片肯定会越来越多,有了此系统就解决了这个问题,同时还能跟其他的辅导员分享自己的作品,交流摄影经验等等。通过毕业设计可以让自己进一步的掌握系统开发的理论和方法,并运用于实际的操作之中。设计高校学工平台系统还可以锻炼自己对开发一个小型网站的能力,让自己形成一种独立思考的习惯和周全的想象各种事情的能力,给自己将来的工作带来一些经验。同时,设计这个高校学工平台系统由传统的手工来管理重要文件转变为计算机管理,方便辅导员查找和使用需要的各种重要文件,可以很大程度上提高辅导员的工作效率。因此,设计这个高校学工平台系统还是很有必要的。1.2研究内容及拟解决问题研究的基本内容主要是基于的高校学工平台系统,以便能更好的为高校学工提供方便。在这个系统中主要需要研究数据库的设计、管理员后台的设计,用户设计以及他们之间的联系。因为在这个系统中,用户需要存的东西比较多,所以要进行分类管理,因此在创建数据库的时候要多建好几张表,在创建的时候如何搞好表与表之间的的关系式一个比较艰巨的任务,因为只有做到这样,把他们的关系都搞清楚了才能在以后做的过程中简单化。管理员后台的设计主要要做到后台的安全性和可靠性以及操作的简单易懂性,这样才能把错误减小。用户的设计主要是实现用户的注册,实现用户可以上传自己的照片和他们的重要文件,还要实现用户在上传东西的时候自主进行分类。用户可以对其他用户上传的照片进行评论,交流,搜索。用户之间可以添加好友等等。拟解决的主要问题主要分为五大方面:1.数据库方面:对系统进行需求分析,初步设计用户信息表、照片表(分为个性展示表和风景表)、评论表、文件表(文件有可能比较多,要分成几个不同的表,像论文集表、参考资料表等等)。2.管理员管理方面:实现对注册用户资料的管理,用户上传照片的管理,看上传的照片是否符合国家规定,用户评论是否符合国家规定等等,即对评论,照片进行审核。3.用户信息管理方面:实现用户的注册,其中包括登录名,登录密码,邮箱等基本信息的修改和更新。注册成功后,根据用户权限可以上传照片、上传自己的重要文件。对其他用户的照片进行评论。4.搜索方面:实现用户可以根据关键字,标题搜索等等。5.BBS方面:实现注册用户可以与其他用户进行交流,同时实现用户在个人中心中可以对自己的信息进行修改,包括密码,邮箱,QQ号码,对自己上传照片进行描述等等。

第2章工具软件与技术基础2.1编程开发环境和相关工具本系统采用MicrosoftVisualStudio2005为开发环境以,sql2005为数据库基础,ASP.NET为开发语言。主要是在开发环境中以新建网站来进行开发。技术路线主要是利用SQLServer来存储数据,通过新建表的形式把数据存储在数据库中,SQLServer是一个功能很强大的数据库,足以用以本网站的开发。前台主要是通过VisualStudio2005里面的控件来进行页面设置和功能实现。后台和前台的联系主要是通过编码来把数据在前台和后台的传递。2.2编程环境2.2.1ASP.NETASP.net是把基于通用语言的程序在服务器上运行。不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译。ASP.net构架是可以用Microsoft(R)公司最新的产品VisualS开发环境进行开发,WYSIWYG(所见即为所得)的编辑。因为ASP.net是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.net的Web应用中。[3]ASP.net同时也是language-independent语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C++和Java的结合体),VB,Jscript。将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向ASP.net。ASP.NET一般分为两种开发语言,VB.NET和C#,在本系统中,我采用的是C#语言。用ASP.NET开发的优点有:1.使用.NET提供的所有类库,可以执行以往ASP所不能实现的许多功能。2.引入了服务器端控件的概念,这样使开发交互式网站更加方便。3.引入了ADO.NET数据访问接口,大大提高了数据访问效率。4.提供ASP.NET的可视化开发环境VisualStudio.NET,进一步提高编程效率。[10]5.保持对ASP的全面兼容。ASP.NET运行速度快。6.ASP.NET全面支持面向对象程序设计。ASP.NET的缺点是:1.ASP.NET运行环境要求比较高,不仅需要IIS的支持,还需要.NETFremeworkSDK。2.相对于ASP,学习起来稍微复杂。[7]另外,ASP.NET优点还包括了ASP.NET启用了分布式应用程序的两个功能:Web窗体和XMLWeb服务。[9]相同的配置和调试基本结构支持这两种功能。Web窗体技术使您建立强大的基于窗体的网页。[6]Web窗体页面使用可重复使用的内建组件或自定义组件以简化页面中的代码。[2]使用ASP.NET创建的XMLWeb服务可使您远程访问服务器。使用XMLWeb服务,商家可以提供其数据或商业规则的可编程接口,之后可以由客户端和服务器端应用程序获得和操作。通过在客户端/服务器和服务器/服务器方案中的防火墙范围内使用标准(如XML消息处理和HTTP),XMLWeb服务可启用数据交换。任何语言编写的且运行在任何操作系统上的程序都能调用XMLWeb服务。[8]2.3相关工具2.3.1SQLServer2005SQLServer2005则是目前最流行的数据库之一,操作简单,功能强大,而VisualStadio2008,是用来开发和运行ASP.NET网站。ASP.NET(基于.NETFramework的ActiveServerPages)是微软公司的一项技术,是一种使嵌入网页中的脚本可由因特网服务器执行的服务器端脚本技术,运行于IIS之中的程序。SQLServer是一个后台数据库管理系统,它功能强大操作简便,日益为广大数据库用户所喜爱。越来越多的开发工具提供了与SQLServer的接口。SQLServer是一个关系数据库管理系统,它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的。SQLSERVER是大数据库,它也属于中型数据库,应用于中小型企业。SQLSERVER的分布式、复制、全文检索、DTS都可以满足中型的应用。SQLSERVER的数据存储在它本身的文件内,在安装目录下的DATA目录下,有和数据库同名的数据文件和日志文件组成。一般,在WINDOWS体系下,中小型的应用都使用SQLSERVERS。此外,SQLSERVER支持存储国耻、触发器、自定义函数等操作;安全性、并发控制能力、数据挖掘、联机操作等方面其他数据库是无法超越的。[1]

第3章系统总体设计3.1系统需求分析需求分析的目标是确定系统必须完成哪些工作,也就是说对目标系统提出完整的、准确的、清晰的、具体的要求,它是系统分析通向系统设计阶段的必经之路。在需求分析的过程中,很重要的一部分就是用数据图和数据字典来描述系统,然后编写规格的说明书。需求分析的好坏直接影响整个工程的成败。[5]本课题的最终目标是实现学工之家的建设、即辅导员可以通过注册的一个账号登陆网站,可以将自己的某些重要文件和一些照片上传到网站上,完成保存。同时在这个网站上可以对别的辅导员的照片进行评论等等。具体的需求如下:辅导员在线注册一个会员账号,且这个会员账号是唯一的,用这个账号登录网站,进去后可以修改自己的信息。同时可以查看自己上传的文件和照片。同时也可以上传文件和上传照片。在这个网站的首页可以看到学校的最新通告,最新上传的文件、照片等等。同时用户可以根据关键字和名称来实现对照片的搜索。此外,此外有一个管理员来管理所有的用户,和上传学校的通告,来管理评论留言内容是否符合国家的规定。则系统根据用户登录时的登录名判断是普通用户还是管理员用户。若是管理员,则跳转到管理员界面,在管理员界面列出了所有用户的基本信息,如用户名啊,何时注册的等等。在这个界面上还有评论管理,留言管理,文件管理等等,管理员可以根据是否符合有关规定来决定是否删除某条评论或留言,亦或是删除这个用户。3.2系统功能根据需求分析,本课题要实现的功能有:1.注册功能;2.登录功能;3.修改密码功能;4.留言板功能;5.上传照片、文件功能,下载功能;6.搜索功能;7.对照片进行评论功能;由此,系统可以分为七个模块,分别是:1.用户注册;2.用户登陆;3.用户个人中心页面;4.上传照片、文件页面;5.照片评论、网站留言页面;6.下载页面;7.管理员页面各功能模块具体的联系如下图3-1:用户注册用户登陆用户注册用户登陆普通用户页面管理员的页面下载文件留言,评论照片下载文件留言,评论照片管理用户上传照片,文件搜索文件修改头像,找回密码上传公告照片,文件管理评论,留言管理图3-1功能模块图3.3数据库设计与实现3.3.1数据库概念模型设计在数据库的设计中,首先要注意命名的规范,其次就是要注意数据的一致性和完整性,尽可能的降低数据的冗余,当然如果数据冗余度低,数据的完整性容易得到保证,但增加了表间连接查询的操作,所以合理的数据冗余也是必要的。可使用规则和约束来对数据的有效性验证。[4]进行数据库设计首先必须准确了解与分析用户需求(包括数据与处理)。数据库的需求分析是整个设计过程的基础,是最困难、最耗费时间的一步。作为地基的需求分析是否做得充分与准确,决定了在其上构建数据大厦的速度与质量。数据分析做得不好,甚至会导致整个数据设计翻工重做。本系统采用SQLServer2005数据库,根据系统需求分析来看,本系统数据表如下:用户表:存放用户的相关信息;文件表:存放用户上传的文件;照片表:存放用户上传的照片;评论表:存放用户对照片进行评论的相关信息;留言表:存放用户在网站上留言的相关信息公告表:存放管理员上传的学校通告。3.3.2数据库逻辑结构设计表3-1数据库表说明表名作用用户表存储用户基本信息文件表存储文件信息公告表存储公告信息照片表存储照片信息留言表存储留言信息评论表存储评论信息各种表都是根据网站的需要来建的,下面主要分析各种表的结构和功能。表3-2用户信息表字段名中文描述是否允许为空类型备注userID编号否int(自增值1)权限号userlever级别是int用户权限Uname名字是varchar用户名称Upassword密码是varchar用户密码Uemail邮箱是varchar用户邮箱HeadPicture头像是varchar用户头像myquestion我的问题是varchar问题myanswer答案是varchar答案num评论数是int评论数表3-3文件信息表字段名中文描述是否允许为空类型备注wid序号否int(自增值1)文件序号wname文件名是nvarchar(50)文件名wtime上传时间是datetime上传时间SPath存储路径是nvarchar(50)存储路径Uname上传者是nvarchar(50)上传者表3-4公告信息表字段名中文描述是否允许为空类型备注id序号否int(自增值1)公告序号title题目是nvarchar(50)公告题目context内容是nvarchar(MAX)公告内容time上传时间是datetime上传时间表3-5照片信息表字段名中文描述是否允许为空类型备注PhotoID序号否int(自增值1)照片序号Uname上传者是nvarchar(50)上传者Caption照片标题是nvarchar(50)照片标题Imageurl存储路径是nvarchar(50)存储路径Time上传时间是datetime上传时间表3-4留言信息表字段名中文描述是否允许为空类型备注mid条数否int(自增值1)留言序号message留言内容是nvarchar(50)留言内容Uname留言者是nvarchar(50)留言者time留言时间是datetime留言时间answer回复内容是nvarchar(50)回复内容表3-4评论信息表字段名中文描述是否允许为空类型备注pid序号否int(自增值1)评论序号Imageurl存储路径是nvarchar(50)存储路径composition评论内容是nvarchar(50)评论内容time评论时间是datetime评论时间Uname评论人是nvarchar(50)评论人answer回复内容是nvarchar(50)回复内容

第4章界面设计与流程图4.1界面设计图4-1首页图4-2留言板首先,使用PhotoshopCS4设计好本系统的页面,然后切割图片,再使用DreamweaverCS4对页面进行排版,最后将页面相关HTML代码复制到VS2005中进行编程。4.2流程图注册账号注册账号使用账号登录系统打开系统首页个人中心上传照片、文件下载文件修改头像查看照片,文件图4-3用户使用流程图进入管理员页面进入管理员页面管理员登录用户信息管理照片、文件管理公告上传留言、评论管理图4-4管理员用户使用流程图

第5章系统实现5.1修改头像图5-1首页首页主要分为五个部分如图所示,网站公告,是关于这个网站的;最新留言则是用户的最新留言;学校公告是管理员上传的公告;还有就是照片列表和文件列表。实现代码如下:SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=学工之家;uid=sa;password=123456";conn.Open();stringstrpx="selectTop6titlefrom公告orderbytimedesc";//文件显示的时候按照时间顺序来显示SqlCommandcom=newSqlCommand(strpx,conn);SqlDataReaderdr=com.ExecuteReader();LinkButton[]A=newLinkButton[5];//定义一个linKButton数组A[0]=LinkButton1;A[1]=LinkButton2;A[2]=LinkButton3;A[3]=LinkButton4;A[4]=LinkButton5;inti=0;while(dr.Read())//读取文件名{A[i].Text=dr["title"].ToString();i++;}conn.Close();其他三块最新留言,照片列表,文件列表的显示和以上代码大同小异。页面之间的传值都是用Session的。5.2新用户注册图5-2注册页面查看用户名是否存在,代码如下staticboolbCheck;voidCheckName(){SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=学工之家;uid=sa;password=123456";conn.Open();//打开数据库stringstrsql="select*from用户表whereUname='"+TextBox1.Text+"'";SqlCommandCom=newSqlCommand(strsql,conn);SqlDataReadersqlreader=Com.ExecuteReader();if(sqlreader.Read()){bCheck=false;}else{bCheck=true;}sqlreader.Close();conn.Close();}//如果用户名存在了,就会跳出此用户名已存在的对话框。注册功能的相关代码如下:CheckName();if(!bCheck)//判断是否存在此用户名{Response.Write("<scriptlanguage=javascript>alert('用户名已被占用,请选择其他名称');</script>");return;}SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=学工之家;uid=sa;password=123456";stringstrVal="'"+TextBox1.Text+"','"+TextBox2.Text+"','"+TextBox3.Text+"'";stringstrIns="insertinto用户表(Uname,Upassword,Uemail)values("+strVal+")";//把用户插入到用户表中SqlCommandinsCom=newSqlCommand(strIns,conn);SqlDataAdapterda=newSqlDataAdapter();conn.Open();da.InsertCommand=insCom;da.InsertCommand.ExecuteNonQuery();Response.Write("<scriptlanguage=javascript>alert('注册成功,请单击返回进入登陆页面');</script>");Response.Redirect("main.aspx");conn.Close();当用户填写完毕点击注册后,即将注册信息数据写入数据库,帐号、密码既可以用来登录网站,普通用户注册时其userID的默认值为0,管理员的userID为1。注册成功后就跳入登录界面。新注册用户的头像是默认的,如果要修改可以到个人中心进行修改。5.3登录,密码初始化用户在登录界面进行登陆,由后台来处理登陆信息。部分代码如下://建立数据库连接SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=学工之家;uid=sa;password=123456";stringstrSecPwd=FormsAuthentication.HashPasswordForStoringInConfigFile(password.Text,"md5");//密码用MD5算法进行加密保存stringstrsql="select*from用户表whereUname='"+name.Text+"'andUpassword='"+strSecPwd+"'";conn.Open();SqlCommandcmd=newSqlCommand(strsql,conn);SqlDataReaderdr=cmd.ExecuteReader();if(dr.Read()){Session["Userlever"]=dr["Userlever"];Session["name"]=name.Text;if((int)Session["Userlever"]==1)//根据用户级别的不同,跳入不同的页面{Response.Redirect("admin.aspx");}else{Response.Redirect("mine.aspx");}}elseResponse.Write("<scriptlanguage=javascript>alert('登陆失败');</script>");dr.Close();conn.Close();后台首先检查用户输入的验证码是否正确,若不正确,则提示用户验证码输入错误;若正确,则将从表单中提取出来的用户名同数据库中取出来的用户名进行比较,若无相等,说明登陆的用户名是非法的,若有相等,则从数据库中取出该用户名的密码,并与输入的密码相比较,若不相等,则说明登陆密码输入错误,若相等,则登陆成功!管理员和普通用户根据他们的userlever进入到不同的页面。在初始化密码页面,必须同时答对问题和密码,否则不能初始化。具体代码如下:SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=学工之家;uid=sa;password=123456";stringstrSecPwd=FormsAuthentication.HashPasswordForStoringInConfigFile(TextBox2.Text,"md5");stringstrSecPwd1=FormsAuthentication.HashPasswordForStoringInConfigFile(Label4.Text,"md5");stringstrsql="select*from用户表whereUname='"+TextBox1.Text+"'";conn.Open();SqlCommandcmd=newSqlCommand(strsql,conn);SqlDataReaderdr=cmd.ExecuteReader();if(dr.Read()){i=dr[6].ToString().CompareTo(TextBox3.Text);j=dr[7].ToString().CompareTo(strSecPwd);if(i==0&&j==0){SqlConnectionconn1=newSqlConnection();conn1.ConnectionString="server=PC-200905172339;database=学工之家;uid=sa;password=123456";stringstrSecPwd2=FormsAuthentication.HashPasswordForStoringInConfigFile((123456).ToString(),"md5");stringstrsql1="update用户表setUpassword='"+strSecPwd2+"'whereUname='"+TextBox1.Text+"'";SqlCommandinsCom=newSqlCommand(strsql1,conn1);SqlDataAdapterda=newSqlDataAdapter();conn1.Open();da.InsertCommand=insCom;da.InsertCommand.ExecuteNonQuery();conn1.Close();Response.Write("<scriptlanguage=javascript>alert('你的密码已初始化为123456!');</script>");}elseif(i!=0&&j==0){Response.Write("<scriptlanguage=javascript>alert('密码提示问题错误!');</script>");TextBox3.Text="";}elseif(i!=0&&j!=0){Response.Write("<scriptlanguage=javascript>alert('密码提示问题或答案错误!');</script>");TextBox2.Text="";TextBox3.Text="";}elseif(i==0&&j!=0){Response.Write("<scriptlanguage=javascript>alert('问题答案错误!');</script>");TextBox2.Text="";}}dr.Close();conn.Close();5.4上传文件、照片图5-3上传文件图5-4上传照片上传文件和照片主要是用到FileUpload控件,上传文件代码如下:if(FileUpload1.HasFile)//如果FileUpload控件中包含了某文件{stringname=FileUpload1.PostedFile.FileName;//客户端文件路径FileInfofile=newFileInfo(name);//创建FileInfo实例//从File对象中获得文件名称,并赋给变量FileNamestringfileName=file.Name;//服务器端文件路径stringwebFilePath=Server.MapPath("文件/"+fileName);//读取文件类型,并赋给变量fileContentTypestringfileContentType=FileUpload1.PostedFile.ContentType;SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=学工之家;uid=sa;password=123456";stringstrVal="'"+Session["name"]+"','"+TextBox1.Text+"','"+webFilePath+"'";stringstrIns="insertinto文件表(Uname,wname,SPath)values("+strVal+")";//讲文件信息插入到文件表中if(!File.Exists(webFilePath)){try{//使用FileUpload控件的SaveAs方法保存文件FileUpload1.SaveAs(webFilePath);Label3.Text="文件“"+fileName+"”成功上传。";SqlCommandinsCom=newSqlCommand(strIns,conn);SqlDataAdapterda=newSqlDataAdapter();conn.Open();da.InsertCommand=insCom;da.InsertCommand.ExecuteNonQuery();conn.Close();;}catch(Exceptionex)//上传文件出错则执行的代码{Label3.Visible=true;//使标签控件可见Label3.Text="文件上传失败,失败原因:"+ex.Message;}}else{Label3.Visible=true;Label3.Text="文件已经存在,请重命名后上传";}}else{Label3.Visible=true;Label3.Text="请选择文件或输入文件路径及名称!";}照片的上传和文件的上传基本上差不多,只不过照片上传的时候定义了文件类型必须为jpg格式的。在这个功能里,在按按钮的时候是跳出一个文本框,实现代码如下:this.Button1.Attributes.Add("onclick","javascript:OpenOvertimeDlog('add',540,400)");//增加Buttonthis.Button2.Attributes.Add("onclick","javascript:OpenOvertimeDlog1('add',540,400)");//增加Button<scripttype="text/javascript"language="javascript">functionOpenOvertimeDlog(frmWin,width,height){varme;varaction;action=frmWin;//把父页面窗口对象当作参数传递到对话框中,以便对话框操纵父页自动刷新。me="addw.aspx?action="+action+"";//显示对话框。window.showModalDialog(me,null,'dialogWidth='+width+'px;dialogHeight='+height+'px;help:no;status:no')}</script>5.5对照片评论,留言功能图5-5浏览照片页面图5-6对照片评论页面图5-7留言板页面评论和留言基本上是差不多的,评论只是针对的是对上传照片进行评论,而留言的话就是你想对别人说什么活着对网站的管理员进行留言。点击评论显示条数那个按钮可以查看对此照片的评论。评论具体代码如下:if((string)(Session["name"])==null){Response.Write("<scriptlanguage=javascript>alert('请先登陆');</script>");}elseif(TextBox1.Text==""){Response.Write("<scriptlanguage=javascript>alert('评论不能为空');</script>");}else{SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=学工之家;uid=sa;password=123456";conn.Open();stringstrIns="insertinto评论表(Imageurl,pinglun,time,Uname)values('"+url+"','"+TextBox1.Text+"','"+DateTime.Now+"','"+Session["name"]+"')";SqlCommandinsCom=newSqlCommand(strIns,conn);SqlDataAdapterda=newSqlDataAdapter();da.InsertCommand=insCom;da.InsertCommand.ExecuteNonQuery();TextBox.Text="";dataGridBind();conn.Close();把评论信息保存到数据库中,如果没有登录的话,则不能发表评论,发表评论的时候内容也不能为空。显示评论的代码如下:SqlConnectionconn1=newSqlConnection();conn1.ConnectionString="server=PC-200905172339;database=学工之家;uid=sa;password=123456";conn1.Open();stringstrsql="selectpinglun,time,Uname,pidfrom评论表whereimageurl='"+(string)(Session["im"])+"'ORDERBYtimeDESC";SqlCommandcom=newSqlCommand(strsql,conn1);SqlDataAdapterda=newSqlDataAdapter();da.SelectCommand=com;DataSetds=newDataSet();da.Fill(ds,"评论表");if(!IsPostBack){first.Enabled=false;up.Enabled=false;}PagedDataSourcepg=newPagedDataSource();pg.DataSource=ds.Tables["评论表"].DefaultView;pg.AllowPaging=true;//允许分页pg.PageSize=6;//每页显示的评论条数if(Request.QueryString["page"]==null){ipage=1;}else{ipage=Convert.ToInt32(Request.QueryString["page"]);}itpage=pg.PageCount;pg.CurrentPageIndex=i1;Label7.Text="第"+ipage.ToString()+"页/共"+itpage.ToString()+"页";if(!pg.IsFirstPage)//判断是否是第一页{first.PostBackUrl=Request.CurrentExecutionFilePath+"?page=1";up.PostBackUrl=Request.CurrentExecutionFilePath+"?page="+Convert.ToString(i1);}if(!pg.IsLastPage){end.PostBackUrl=Request.CurrentExecutionFilePath+"?page="+pg.PageCount.ToString();next.PostBackUrl=Request.CurrentExecutionFilePath+"?page="+Convert.ToString(ipage+1);}GridView1.DataSource=pg;GridView1.DataBind();显示评论这里用了DataList来显示,显示的是评论者from,评论时间time,还有就是评论内容。留言和以上的评论大同小异,只不过留言每页显示的是10条。5.6搜索功能具体代码如下:SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=学工之家;uid=sa;password=123456";stringstrsql="select*from文件表wherewname='"+TextBox1.Text+"'";//查询是否存在此文件conn.Open();//连接数据库SqlCommandcmd=newSqlCommand(strsql,conn);SqlDataReadersqlreader=cmd.ExecuteReader();if(sqlreader.Read()){Session["wname"]=sqlreader["wname"];if(Session["wname"]=""){Response.Write("<scriptlanguage=javascript>alert('你搜索的文件不存在');</script>");}else{Response.Redirect("loaddown.aspx");}}如果文件存在的话,就跳入下载页面,显示出搜索文件的基本信息,同时提供此文件的下载。5.7管理员界面图5-8管理员界面管理员登录就进入管理员界面,本界面可以查看使用此管理系统的用户的基本信息,并可对其信息进行编辑和删除。同时在此界面上,可以上传公告,对照片、文件的管理,评论、留言的管理。其中用户管理、留言管理、照片管理、文件管理、评论管理需要配置数据源,实现方法如下:使用GridView控件配置数据源,与SQL2005数据库表中的数据连接,首先选择GridView控件到页面,在选择数据源里选择新建数据源,接下来选择数据库类型,我们选择数据库,点击确定后,我们需要选择数据连接,点击新建连接,选择MicrosoftSQLServer,接着设置添加连接的数据,选择服务器,登录SQL服务器方式,选择数据库名,接着连续点击下一步,直至出现如图5-10:图5-9配置Select语句我们选择需要读取的表的列名,按完成即可。上传公告代码如下:CheckName();if(!bCheck)//判断此公告是否存在{Response.Write("<scriptlanguage=javascript>alert('此公告以存在');</script>");return;}SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=学工之家;uid=sa;password=123456";stringstrVal="'"+TextBox1.Text+"','"+TextBox2.Text+"','"+DateTime.Now.ToShortDateString()+"'";stringstrIns="insertinto公告(title,contect,time)values("+strVal+")";//将公告信息插入到数据库中的公告表中SqlCommandinsCom=newSqlCommand(strIns,conn);SqlDataAdapterda=newSqlDataAdapter();conn.Open();da.InsertCommand=insCom;da.InsertCommand.ExecuteNonQuery();Response.Write("<scriptlanguage=javascript>alert('添加成功,返回上一页');</script>");Response.Redirect("admin.aspx");conn.Close();//关闭数据库5.8下载文件图5-10配置Select语句下载页面显示的是要下载文件的一些基本信息,实现下载的代码如下:stringSelectName=Label7.Text;//读取存储路径stringsaveFilename=Label4.Text;//读取文件名FileInfofinfo=newFileInfo(SelectName);Response.Clear();Response.Charset="utf-8";Response.Buffer=true;this.EnableViewState=false;Response.ContentEncoding=System.Text.Encoding.UTF8;Response.AppendHeader("Content-Disposition","attachment;filename="+saveFilename);Response.ContentType="application/unknown";Response.WriteFile(SelectName);Response.Flush();Response.Close();Response.End();5.9修改头像图5-10配置Select语句修改头像就是跟上传照片差不多,就是把数据库中的头像保存中的照片换成你想要的那张头像。就是更新该用户的头像。具体代码如下:protectedvoidButton1_Click(objectsender,EventArgse){if(FileUpload1.HasFile){stringname=FileUpload1.PostedFile.FileName;FileInfofile=newFileInfo(name);stringfileName=file.Name;stringwebFilePath=Server.MapPath("photo/"+fileName);stringfileContentType=FileUpload1.PostedFile.ContentType;SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=学工之家;uid=sa;password=123456";stringstrIns="update用户表setHeadPicture='"+"~/photo/"+fileName+"'whereUname='"+(String)(Session["name"])+"'"//更新数据库中的头像图片;if(fileContentType=="image/pjpeg"){if(!File.Exists(webFilePath)){try{FileUpload1.SaveAs(webFilePath);Label1.Text="照片“"+fileName+"”成功上传。";SqlCommandinsCom=newSqlCommand(strIns,conn);SqlDataAdapterda=newSqlDataAdapter();conn.Open();da.InsertCommand=insCom;da.InsertCommand.ExecuteNonQuery();conn.Close();;

温馨提示

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

评论

0/150

提交评论