基于ASP.NET的校友通信录设计毕业论文.doc_第1页
基于ASP.NET的校友通信录设计毕业论文.doc_第2页
基于ASP.NET的校友通信录设计毕业论文.doc_第3页
基于ASP.NET的校友通信录设计毕业论文.doc_第4页
基于ASP.NET的校友通信录设计毕业论文.doc_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

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

文档简介

第一章 绪 论基于ASP.NET的校友通信录设计毕业论文目 录第一章 绪 论11.研究开发的背景12.开发的目的和意义13.研究的主要内容1第二章 开发环境及简单介绍21.IIS v5.1安装21.1.安装IIS21.2.启动IIS22.Visual studio 2005安装23.SQL Server2000安装23.1.安装SQL Server2000程序23.2启动连接SQL Server 20003第三章 系统设计41.可行性研究41.1技术可行性41.2经济可行性41.3操作可行性42.功能需求42.1注册模块42.2 班级查询42.3通信录52.4留言板5第四章 数据库设计61.SQL Server2000数据库的概述62.数据库表的设计6系统的详细设计111.本课题的设计思想112.系统设计原则113.系统各模块的主要功能114.系统各模块的具体功能114.1登录模块114.2注册模块144.3班级查询模块204.4 通信录354.5 留言板37第五章 系统的评价42总 结43参考文献44致 谢45第一章 绪 论1.研究开发的背景 由于互联网的迅猛发展,网民增加也越来越多,而网名希望可以在网络上跟家人、朋友、同学能够联系。 现在应用程序越来越多的基于web浏览器,而慢慢的被人们接受,越来越多的用户尝试在web服务上进行自己的应用,包括博客,个人网站,个人日志,网店等都是基于web应用的。现开发asp.Net校友通信录进行同学之间的交流,可以相互的留言,加强同学、朋友直接的关系。2.开发的目的和意义 一个优秀的学校离不开广大校友的支持和帮助,一所学校,特别是有几十年甚至近百年历史的学校,在国内外有无数的校友,很明显 ,在信息飞速发展的今天,校友与学校之间以及校友与校友之间仍然主要通过普通信件或电话进行联系的方式已经落后,作为母校,有义务也有责任加强校友录的建设工作,以进一步加强校友与学校以及校友自身之间的联系。校友,在很多情况下一提到这个问题便让人想起仅仅是在学校搞校庆时拉赞助的对象,其实,广大的校友带给母校的往往是一些更可贵的看不见的无形资产,他们经常会为母校的发展献计献策,他们的成功也会推动母校的发展,对在校学生起到一个良好的示范作用,所以校友是学校发展不可缺少的力量。3.研究的主要内容 本通信录使用visual studio2005及Dreamweaver 8.0进行开发,该论文包括:用户注册及登录、班级查询、通信录、留言板四个模块,是一个面向网络的简单的网站。第二章 开发环境及简单介绍第二章 开发环境及简单介绍下面的程序安装都是基于windows xp系统1.IIS v5.1安装1.1.安装IIS 在“开始”菜单里面选择“控制面板”“添加和删除程序”,在打开的添加和删除程序里面单击“添加和删除windows组件”,在里面选择“Internet信息服务IIS“,在其前面框里面打勾,然后点击”下一步“,安装完成后,点击完成(注:由于我们用的系统基本上都没有安装IIS组件,需要从网上下载IIS,然后再上面安装)。1.2.启动IIS 在”控制面板“中选择”管理工具“”服务“”f服务“”IIS admin“点击右键选择启动。2.Visual studio 2005安装 双击“visual studio 2005”的安装按钮,进入安装程序选择“我同意”后点击“下一步”选择“完全”安装,可以在右边选择安装的路径,点击“下一步”进入visual studio2005的安装页,等待一段时间可安装完成。3.SQL Server2000安装3.1.安装SQL Server2000程序 点击SQL Server目录下的antorun.Exe文件,打开安装窗口,在窗口中选择“安装SQL Server 2000组件”,接着选择“安装数据库服务器”,出现安装向导后点击“下一步”后出现“计算机名”,“本地计算机”是默认选项,然后点击“下一步”,在“安装选择”窗口中,选择默认的“创建新的SQL Server 2000实例,或安装客户端工具”点击“下一步”,接下来在“安装定义”窗口选择默认项,点击“下一步”,在“实例名”窗口选择“默认”,点击“下一步”,在安装类型对话窗口中可以选择你喜欢的安装类型,在这里选择“典型”,及目的文件,在这里选择D盘,在点击“下一步”,在“服务账户”窗口中选择“使用本地系统账户”点击“下一步”,在“身份验证模式”,在这里选择的是“windows身份验证模式”,点击“下一步”,点击“继续”,安装程序开始安装,安装完成(注:安装完成之后请重新启动计算机)。3.2启动连接SQL Server 2000 在开始菜单栏中找到SQL Server 2000组件中的“企业管理器”,点击“企业管理器”,在控制台根目录下找到SQL Server组,看看是否连接到数据库,要是现实连接不上,点击“操作”选择“编辑SQL Server 注册属性”,这样可以改变属性,若连接不上,重新注册一个,根据向导注册,连上之后删除已存在的那个。第三章 系统设计第三章 系统设计1.可行性研究1.1技术可行性 本论文是运行在windows xp系统上的,采用Asp.Net(C#) IIS、SQL Server2000技术开发的,应用SQL Server 2000进行数据的存储,在IIS 、visual studio 都是在网上免费下载的软件,所以这个课题在研究上是可行性的1.2经济可行性 现在网络的普遍,网络费用年年的减少,计算机的普遍,而计算机价格越来越便宜,性能不断地提高。而它只需拥有一台能够上网的计算机就可以操作,所以在系统的开发资金投入不需要太多,在管理上只要系统管理和系统维护人员,所以这个课题在经济上是可行的1.3操作可行性 在操作上本着简单,实用为原则,在功能上简单,在操作上简单,容易比较好掌握。2.功能需求2.1注册模块这里主要是填写自己的一些基本资料,让别人能够从校园中搜索到认识的同学。从填写的基本信息中找到联系方式。2.2 班级查询 主要查找一些已经存在的班级,和添加没有存在的班级。2.3通信录 用户可以在此处查看同班同学的基本信息。2.4留言板 提供用户可以在留言板上进行编辑和删除操作。 校友录网站系统利用INTERNET、ASP.NET、数据库等技术。全面收集和处理数据,提供各类信息,利用现代化管理方法对校园的信息进行管理并对向同学开放,使很多学校拥有了这一功能强大的校友录网站其功能结构图如下:校友通信录网站后台前台网站首页用户注册用户登录后显示页面用户管理留言板管理退出第五章 系统的详细设计第四章 数据库设计1.SQL Server2000数据库的概述几乎所有的应用程序都需要存放大量的数据,并将其组织成易于读取的格式。这种要求通常可以通过数据库管理系统(DBMS)来实现。数据库管理系统提供了数据在数据库内存方式的管理能力。简单的说,数据库就是一组排列成易于处理和读取的相关信息的集合,因此,数据库结构设计的好坏直接对应系统的效率以及实现的效果,产生的影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。设计数据库系统时,应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。本系统采用了SQL Server 2000作为数据库,是结构化查询语言,主要功能是同各种数据库建立联系,进行沟通,按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据管理系统的标准语言,SQL语句可以用来执行各种各样的操作,绝大多数的关系型数据库管理系统都采用了SQL语言标准,虽然很多数据库都对SQL语句进行了在开发和扩展,但是包括Select、Insert、Update、Delete、Create以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作。2.数据库表的设计2.1表说明表名表说明备注usrreg此表记录所有用户人员的基本信息class此表记录用户注册的班级包括所属大学在的省市city此表记录全国城市classtype此表记录学历info此表记录用户的留言province此表记录全国省份school此表记录用户注册的学校包括所在省市表4-12.2 userreg表列名数据类型长度约束说明IdInt4Notnull用户编号LoginVarchar30Notnull用户注册名PasswordVarchar30Notnull用户密码NameVarchar30Notnull用户姓名SexChar2性别BthDatetime8出生日期EmailVarchar30用户邮箱Work_tellVarchar30工作电话Home_tellVarchar30家庭电话MobileVarchar30手机号码JobVarchar50工作单位AddressVarchar50工作单位地址YbVarchar20邮编Class_idInt3班级编号RegdateDatetime8毕业时间表4-22.3 class表列名数据类型长度约束说明Class_idInt4Notnull班级编号Class_nameVarchar30Notnull班级名Pro_idInt4省份编号school_idInt4Notnull学校编号City_idInt4Notnull城市编号Admin1Int4班级管理员Admin2Int4班级副管理Admin3Int4班级副管理Type_idInt4学历类型Class_numInt4几班GradDatetime8毕业时间Del_flagChar1删除标志表4-32.4 city表列名数据类型长度约束说明City_idInt4Notnull城市编号City_nameVarchar20城市名Pro_idInt4省份编号表4-42.5 classtype表列名数据类型长度约束说明Type_idInt4Notnull学历编号Type_nameVarchar20Notnull学历名称表4-52.6 info表列名数据类型长度约束说明Info_idInt4Notnull留言编号Info_titleNvarchar50Notnull留言题目Info_cntNtext20Notnull留言内容IdInt4用户编号Calss_idInt4班级编号Del_flagChar1删除标志EditerInt4编辑标志表4-62.7 province表列名数据类型长度约束说明Pro_idInt4Notnull省份编号Pro_nameVarchar20省份名称表4-72.8 school表列名数据类型长度约束说明School_idInt4Notnull学校编号Sch_nameVarchar50学校名称Pro_idInt4省份编号City_idInt4城市编号Del_flagChar1删除标志Sch_ereaVarchar20学校所在地Type_idInt4学历编号YbVarchar20邮编Sch_httpVarchar50学校网址表4-82.9 各表之间的关系第五章 系统的详细设计1.本课题的设计思想在系统设计中综合考虑如下因素:技术的先进性,符合网络发展的趋势;满足人们的需要,节省时间;提高工作效率,满足网络现在和将来的数据传输需求;实用性、灵活性、模块化、扩充性、经济性、安全性。2.系统设计原则在设计阶段,我们将集中研究系统的软件实现问题,即在分析模型的基础上形成实现环境下的设计模型。一般情况下,设计主要涉及系统设计、对象设计(或详细设计)、数据库设计和用户界面设计等活动。3.系统各模块的主要功能3.1登录模块 用户可以以此登录进去各项操作。3.2注册模块 用户没有想注册,可以通过此操作来注册。3.3班级查询 提过用户来查询自己所在的班级,当自己所在的班不在时可以通过此处进去创建自己的班级,并成为此班级管理员。3.4 通信录 用户在你自己所在的班级可以查看已经注册后同班的一些基本信息。3.5留言板用户可以通过此处,给自己班上的人或事情进行留言,方便大家知道。4.系统各模块的具体功能4.1登录模块 登录界面即为系统首页如图5-1,从首页根据输入的用户名、密码来进行登录操作,通过连接数据库在userreg表中进行相应验证,如果表中有此用户名和密码,则验证通过而进入系统,如果表中没有此用户相应信息,则验证不能通过而继续留在登录首页。图5-1 登陆界面其核心代码如下:namespace schoolpublic partial class WebForm1 : System.Web.UI.Pageprotected void Page_Load(object sender, System.EventArgs e)if(!Page.IsPostBack)lblMsg.Text=;login.Text=;Pwd.Text=;override protected void OnInit(EventArgs e)InitializeComponent();base.OnInit(e);private void InitializeComponent() protected void btnOK_Click(object sender, System.EventArgs e)/建立与数据源的连接string sqlconn = ConfigurationSettings.AppSettingsSQLConnectionString;SqlConnection myConnection = new SqlConnection(sqlconn);string id=login.Text.ToString();string pass=Pwd.Text.ToString();string sql=select * from userreg where login=+id+and password=+pass+;SqlCommand cmd = new SqlCommand(sql, myConnection);myConnection.Open();SqlDataReader rs=cmd.ExecuteReader();if(rs.Read()Sessionuid=rsid.ToString();Page.Response.Redirect(school.aspx);elselblMsg.Text=用户名或口令错误!请重新输入!;Pwd.Text=;myConnection.Close();protected void btnreg_Click(object sender, System.EventArgs e)lblMsg.Text=;login.Text=;Pwd.Text=;Page.Response.Redirect(regedit.aspx);4.2注册模块注册页面如图5-2,该该模块主要是用于想加入该网站的同学而设的注册模块,用户需要填完这些才能登陆到校友网。如图5-2其核心代码如下:public partial class regedit : System.Web.UI.Page/声明文件中使用的表格表单、变量。protected System.Web.UI.WebControls.TextBox txtUpager;private ArrayList alYear;private ArrayList alMonth;private ArrayList alDay;int i;protected System.Web.UI.WebControls.Calendar Cal1;protected void Page_Load(object sender, System.EventArgs e)if(!Page.IsPostBack)step1.Visible=true;step2.Visible=false;alYear=new ArrayList();alMonth=new ArrayList();alDay=new ArrayList();for(i=1980;i2010;i+)alYear.Add(i.ToString();for(i=1;i=12;i+)alMonth.Add(i.ToString();for(i=1;i32;i+)alDay.Add(i.ToString();ddlYear.DataSource=alYear;ddlYear.DataBind();ddlMonth.DataSource=alMonth;ddlMonth.DataBind();ddlDay.DataSource=alDay;ddlDay.DataBind();override protected void OnInit(EventArgs e)InitializeComponent();base.OnInit(e);protected void btnOK_Click(object sender, System.EventArgs e)if(Page.IsValid)string sqlconn = ConfigurationSettings.AppSettingsSQLConnectionString;SqlConnection myConnection = new SqlConnection(sqlconn);string sql=select * from userreg where login=+txtAccount.Text.ToString()+;myConnection.Open();SqlCommand cmd = new SqlCommand(sql, myConnection);SqlDataReader dr=cmd.ExecuteReader();if(dr.Read()lblStep2.Text=您输入的用户名已经存在,请您选择一个其他的名字!;myConnection.Close();elsemyConnection.Close();lblPwd.Text=txtUpwd.Text.ToString();step1.Visible=false;step2.Visible=true;span1.InnerHtml=您输入的信息是:+;span1.InnerHtml+=登录名:+txtAccount.Text.ToString()+;span1.InnerHtml+=姓名:+txtUname.Text.ToString()+;span1.InnerHtml+=性别:+rltSex.SelectedItem.Text.ToString()+;span1.InnerHtml+=生日:+ddlYear.SelectedItem.Text.ToString()+年+ddlMonth.SelectedItem.Text.ToString()+月+ddlDay.SelectedItem.Text.ToString()+日+;span1.InnerHtml+=E_mail:+txtUemail.Text.ToString()+;span1.InnerHtml+=办公电话:+txtUtel1.Text.ToString()+;span1.InnerHtml+=家庭电话:+txtUtel2.Text.ToString()+;span1.InnerHtml+=移动电话:+txtUtel3.Text.ToString()+;span1.InnerHtml+=工作单位:+txtUjob.Text.ToString()+;span1.InnerHtml+=通讯地址:+txtUaddr.Text.ToString()+;span1.InnerHtml+=邮政编码:+txtUzip.Text.ToString()+;public void btnSave_Click(object sender, System.EventArgs e)if(Page.IsValid)string rs=;string sqlconn = ConfigurationSettings.AppSettingsSQLConnectionString;SqlConnection myConnection = new SqlConnection(sqlconn);myConnection.Open();string sql=select max(id)+1,count(*) from userreg;SqlCommand cmd1 = new SqlCommand(sql, myConnection);SqlDataReader myReader;myReader = cmd1.ExecuteReader();while (myReader.Read()if(myReader1.ToString()!=0)rs += myReader0.ToString();elsers=1;string strSQL=;strSQL=INSERT INTO userreg(id,name,login,password,sex,bth,regdate,work_tell,home_tell,mobile_tell,address,yb,email,job) VALUES(;strSQL+=rs+,;strSQL+=txtUname.Text.ToString()+,;strSQL+=txtAccount.Text.ToString()+,;strSQL+=lblPwd.Text.ToString()+,;strSQL+=rltSex.SelectedItem.Text.ToString()+,;strSQL+=ddlYear.SelectedItem.Text.ToString()+-+ddlMonth.SelectedItem.Text.ToString()+-+ddlDay.SelectedItem.Text.ToString()+,;strSQL+=DateTime.Today.ToString()+,;strSQL+=txtUtel1.Text.ToString()+,;strSQL+=txtUtel2.Text.ToString()+,;strSQL+=txtUtel3.Text.ToString()+,;strSQL+=txtUaddr.Text.ToString()+,;strSQL+=txtUzip.Text.ToString()+,;strSQL+=txtUemail.Text.ToString()+,;strSQL+=txtUjob.Text.ToString()+);myReader.Close();SqlCommand cmd2 = new SqlCommand(strSQL, myConnection);cmd2.ExecuteNonQuery();strSQL=select id from userreg where login=+txtAccount.Text.ToString()+;SqlCommand cmd3 = new SqlCommand(strSQL, myConnection);SqlDataReader dr=cmd3.ExecuteReader();while(dr.Read()Sessionuid=drid;dr.Close();myConnection.Close(); Page.Response.Redirect(school.aspx);protected void btnReturn_Click(object sender, System.EventArgs e)step1.Visible=true;step2.Visible=false;protected void Date_SelectIndexChanged(object sender,System.EventArgs e)int numbers = 31,28, 31, 30, 31,30,31,31,30,31,30,31;if(Convert.ToInt32(ddlYear.SelectedItem.Text.ToString()%4)=0)numbers1=29;alDay=new ArrayList();for(i=1;i=numbersConvert.ToInt32(ddlMonth.SelectedItem.Text.ToString()-1;i+)alDay.Add(i.ToString();ddlDay.DataSource=alDay;ddlDay.DataBind();4.3班级查询模块 班级的查询包括班级信息、班级注册、两部分。4.3.1班级信息 班级信息如图5-3包括了以前所注册的班级信息包括班级管理员通信录都可以找到,也可以很快的找到自己所学的班级。如图5-3其核心代码如下:public partial class school : System.Web.UI.Pagestring strConn,strSQL;int uid;char de=&;string strCl=;string scl;int i;SqlConnection cn;SqlDataAdapter da;DataSet ds;SqlDataReader dr;SqlCommand cmd;protected void Page_Load(object sender, System.EventArgs e)if(Session.Count=0) Page.Response.Redirect(default.aspx);else if(Sessionuid.ToString()=) Page.Response.Redirect(default.aspx);uid=Convert.ToInt32(Sessionuid.ToString();strConn = ConfigurationSettings.AppSettingsSQLConnectionString;strSQL=Select class_id from userreg where id=+uid.ToString();cn=new SqlConnection(strConn);cmd=new SqlCommand(strSQL,cn);cn.Open();dr=cmd.ExecuteReader();while(dr.Read()scl=drclass_id.ToString();strCl=scl.Split(de);dr.Close();if(!Page.IsPostBack)strSQL=select pro_name from province;da=new SqlDataAdapter(strSQL,cn);ds=new DataSet();da.Fill(ds,province);for(i=0;ids.Tablesprovince.Rows.Count;i+)ddlProve.Items.Add(ds.Tablesprovince.Rowsipro_name.ToString();da.Dispose();if(strCl0.ToString()!=)strSQL=select class_name,admin1,admin2,admin3,class_id,school_id from class where class_id=;for(i=0;istrCl.Length;i+)if(i=strCl.Length-1)strSQL+=strCli.ToString();elsestrSQL+=strCli.ToString()+ or class_id=;ds=new DataSet();da=new SqlDataAdapter(strSQL,cn);da.Fill(ds,clinfo);ds.Tablesclinfo.Columns.Add(A1);ds.Tablesclinfo.Columns.Add(A2);for(i=0;istrCl.Length;i+)ds.Tablesclinfo.RowsiA1=i+1;for(i=0;istrCl.Length;i+)strSQL=select name from userreg where id=+ds.Tables0.Rowsiadmin1.ToString();cmd=new SqlCommand(strSQL,cn);dr=cmd.ExecuteReader();while(dr.Read()ds.Tablesclinfo.RowsiA2=正:+dr0.ToString();dr.Close();strSQL=select name from userreg where id=+ds.Tables0.Rowsiadmin2.ToString();cmd=new SqlCommand(strSQL,cn);dr=cmd.ExecuteReader();while(dr.Read()ds.Tablesclinfo.RowsiA2+=    副:+dr0.ToString();dr.Close();strSQL=select name from userreg where id=+ds.Tables0.Rowsiadmin3.ToString();cmd=new SqlCommand(strSQL,cn);dr=cmd.ExecuteReader();while(dr.Read()ds.Tablesclinfo.RowsiA2+=    副:+dr0.ToString();dr.Close();ds.Tablesclinfo.Columns.Add(A3);for(i=0;istrCl.Length;i+)strSQL=select sch_name from school where sch_id=+ds.Tablesclinfo.Rowsischool_id.ToString();cmd=new SqlCommand(strSQL,cn);dr=cmd.ExecuteReader();while(dr.Read()ds.Tablesclinfo.RowsiA3=dr0.ToString()+-+ds.Tablesclinfo.Rowsiclass_name.ToString();dr.Close();DataGrid1.DataSource=ds.Tablesclinfo.DefaultView;DataGrid1.DataBind();cn.Close();elselblNo.Visible=true;cn.Close();override protected void OnInit(EventArgs e)InitializeComponent();base.OnInit(e);protected void btnNext_Click(object sender, System.EventArgs e)string strPam=;strPam=Convert.ToString(ddlProve.SelectedIndex+1);Page.Response.Redirect(find_class.aspx?pid=+strPam);4.3.2.班级注册 班级注册有三个页面,第一个页面主要是班级所在学校的区域,第二个页面主要是查找学校,第三个页面时注册班级。3-2-1.学校区域的查找如图5-4所示:如图5-4其核心代码如下:public partial class find_class : System.Web.UI.Pageprotected System.Web.UI.WebControls.RegularExpressionValidator RegularExpressionValidator1;SqlConnection cn;SqlCommand cmd;SqlDataReader dr;string strConn,strSQL;protected void Page_Load(object sender, System.EventArgs e)if(Session.Count=0) Page.Response.Redirect(default.aspx);else if(Sessionuid.ToString()=) Page.Response.Redirect(default.aspx);if(!Page.IsPostBack)ddlSchtype.Items.Add(请选择学校类型);ddlSchtype.Items.Add(大学);ddlSchtype.Items.Add(中学);ddlSchtype.Items.Add(中专);ddlSchtype.Items.Add(小学);strConn = ConfigurationSettings.AppSettingsSQLConnectionString;strSQL=select city_name from city where pro_id=+Page.Requestpid.ToString();cn=new SqlConnection(strConn);cn.Open();cmd=new SqlCommand(strSQL,cn);dr=cmd.ExecuteReader();while(dr.Read()ddlSchcity.Items.Add(drcity_name.ToString();cn.Close();override protected void OnInit(EventArgs e) lizeComponent();base.OnInit(e);protected void btnNext1_Click(object sender, System.EventArgs e)if(ddlSchtype.SelectedIndex=0)lblSchtype.Visible=true;elsestring P1,P2,P3;strCo

温馨提示

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

评论

0/150

提交评论