web技术和应用实验报告.docx
《web技术和应用实验报告.docx》由会员分享,可在线阅读,更多相关《web技术和应用实验报告.docx(11页珍藏版)》请在冰豆网上搜索。
web技术和应用实验报告
华北电力大学
实验报告
|
|
实验名称图书馆管理系统开发
课程名称web技术及使用
|
|
专业班级:
计科0801学生姓名:
李雪飞
学号:
2成绩:
指导教师:
王蓝婧实验日期:
2011.4.27
一、实验目的
1.Web开发的相关技术
2.掌握ASP.NET数据库程序设计方法
二、实验内容及要求
设计一个基于ASP的图书馆管理网站,实现图书馆管理,包括登录、用户信息显示,用户密码修改、新书通报、书目查询、图书借阅和归还、图书信息维护等功能。
网站采用ASP作为编程语言,SQLServer作为数据库支持。
功能设计图:
主要功能框图:
三、实验仪器及设备
计算机、VisualStudio2010、SQLServer2008
四、问题分析及系统设计
下面根据实验要求将系统内个页面作分析和解释,并附上关键代码。
1.登录
作为一个完整的图书馆系统,网站要面对各种用户,并针对不同用户实现不同的功能,因此,首先设计的是用户登陆界面。
按照实验要求,我设计的图书馆管理系统有三种用户,学生、管理员、S管理员。
当用户填入用户名及密码后,通过数据库的数据验证后用户进入信息显示界面。
三中用户对应数据库中三种用户表,学生、管理员、S管理员。
关键代码段:
前台:
登录
用户:
TextBoxID="用户"runat="server">
TextBox>
RequiredFieldValidatorID="RequiredFieldValidator1"runat="server"
ControlToValidate="用户"Display="Dynamic"ErrorMessage="学号不能为空!
">
RequiredFieldValidator>
还没注册?
点击注册
密码:
TextBoxID="密码"runat="server"style="text-align:
left">
TextBox>
RequiredFieldValidatorID="RequiredFieldValidator2"runat="server"
ControlToValidate="密码"Display="Dynamic"ErrorMessage="密码不能为空!
">
RequiredFieldValidator>
RadioButtonListID="身份"runat="server"RepeatColumns="3">
ListItem>学生
ListItem>
ListItem>管理员
ListItem>
ListItem>S管理员
ListItem>
RadioButtonList>
RequiredFieldValidatorID="RequiredFieldValidator3"runat="server"
ControlToValidate="身份"Display="Dynamic"ErrorMessage="身份未选择!
">
RequiredFieldValidator>
ButtonID="Button1"runat="server"onclick="Button1_Click1"
style="text-align:
center"Text="登录"/>
后台:
登录
用户:
TextBoxID="用户"runat="server">
TextBox>
RequiredFieldValidatorID="RequiredFieldValidator1"runat="server"
ControlToValidate="用户"Display="Dynamic"ErrorMessage="学号不能为空!
">
RequiredFieldValidator>
还没注册?
点击注册
密码:
TextBoxID="密码"runat="server"style="text-align:
left">
TextBox>
RequiredFieldValidatorID="RequiredFieldValidator2"runat="server"
ControlToValidate="密码"Display="Dynamic"ErrorMessage="密码不能为空!
">
RequiredFieldValidator>
RadioButtonListID="身份"runat="server"RepeatColumns="3">
ListItem>学生
ListItem>
ListItem>管理员
ListItem>
ListItem>S管理员
ListItem>
RadioButtonList>
RequiredFieldValidatorID="RequiredFieldValidator3"runat="server"
ControlToValidate="身份"Display="Dynamic"ErrorMessage="身份未选择!
">
RequiredFieldValidator>
ButtonID="Button1"runat="server"onclick="Button1_Click1"
style="text-align:
center"Text="登录"/>
2.注册
本系统还设置了用户注册功能,点击登录页面上链接可直接到达,此功能针对于没有注册的新生。
新生注册时,按照要求填入各种信息即可注册成功,然后登陆可进入图书馆管理系统。
关键代码后台:
protectedvoid注册_Click(objectsender,EventArgse)
{
if(IsValid==true)
{
stringstrxh=学号.Text.ToString();
stringstrxm=姓名.Text.ToString();
stringstrbj=班级.Text.ToString();
stringstrmm=密码.Text.ToString();
SqlConnectionsqlcon=newSqlConnection();
sqlcon.ConnectionString="DataSource=localhost;InitialCatalog=lib;IntegratedSecurity=True;";
sqlcon.Open();
strings="select*from学生where[学号]='strxh'";
SqlCommandscmd=newSqlCommand(s,sqlcon);
SqlDataReaderdr=scmd.ExecuteReader();
//intx=(int)scmd.ExecuteScalar();
if(dr.Read())
{
stringstrinsert=string.Format("insertinto学生(学号,姓名,班级,密码)values('{0}','{1}','{2}','{3}')",strxh,strxm,strbj,strmm);
SqlCommandsqlcmd=newSqlCommand(strinsert,sqlcon);
sqlcmd.ExecuteNonQuery();
sqlcon.Close();
//);Response.Redirect("第一页.aspx");
Response.Write("");
}
else
{
Response.Write("");
}
if(dr.IsClosed==false)
{
dr.Close();
}
}
}
3.用户信息显示界面
用户登录后进入用户信息页面,这里以学生用户为例解释。
学生信息页面显示各种学生用户功能页面链接,以及学生信息。
学生信息数据来自数据库学生表。
在也建立一个Gridview控件,将数据源绑定在数据库中学生表上。
另外,借阅历史页面的原理和此基本相同。
关键代码:
GridViewID="gv"runat="server"AutoGenerateColumns="False"DataSourceID="SqlDataSource1">
BoundFieldDataField="学号"HeaderText="学号"SortExpression="学号"/>
BoundFieldDataField="姓名"HeaderText="姓名"SortExpression="姓名"/>
BoundFieldDataField="班级"HeaderText="班级"SortExpression="班级"/>
BoundFieldDataField="密码"HeaderText="密码"SortExpression="密码"/>
GridView>
SqlDataSourceID="SqlDataSource1"runat="server"
ConnectionString="<%$ConnectionStrings:
libConnectionString%>"
SelectCommand="SELECT*FROM[学生]WHERE([学号]=@学号)">
SessionParameterDefaultValue="-1"Name="学号"SessionField="uid"
Type="String"/>
SqlDataSource>
4.书刊查询、修改密码、更新图书信息、新书通报
书刊查询、修改密码、更新图书信息、新书通报等功能都是ADO.NET中Command对象使用的变化。
以书刊查询为例。
前台界面设计时,添加一个输入查询关键的Textbox控件和一个Gridview控件。
后台代码如下:
protectedvoidButton1_Click(objectsender,EventArgse)
{
GridView1.Visible=true;
SqlConnectionsqlcon=newSqlConnection();
sqlcon.ConnectionString="DataSource=localhost;InitialCatalog=lib;IntegratedSecurity=True";
sqlcon.Open();
stringstrse=TextBox1.Text.ToString();
stringstrslt=string.Format("select*from图书信息where书名like'%{0}%'",strse);
SqlCommandsqlcom=newSqlCommand(strslt,sqlcon);
SqlDataReaderdr=sqlcom.ExecuteReader();
GridView1.DataSource=dr;
GridView1.DataBind();
sqlcon.Close();
}
以上阐述了系统中使用的几种关键的技术,其他的技术大体是这几种的变形使用,故不再重复解释。
五、实验结果
登陆页面:
学生信息显示:
借阅历史:
修改密码:
借出图书页面:
更新图书信息:
六、总结和体会
经过了这一次的实验,我学会了完整的制作一个网站的技术框架,虽然整体上显得很仓促,但是,学到了很多东西。
我不仅对的知识得到了充分的理解,而且和制作网站相关的数据库技术也有了一些了解。
验收实验时,老师给出了一下宝贵的建议,我会认真的吸取学习,制作出更好的网站来。