设计
数据表结构
表1表tb_Administrator的结构
列名
数据类型
长度
主键否
功能描述
ID
bigint
8
是
系统管理员编号
Name
varchar
50
否
管理员名称
PWD
varchar
50
否
管理员密码
JoinTime
datatime
8
否
加入时间
表2表tb_Lesson的结构
列名
数据类型
长度
主键否
功能描述
ID
bigint
8
是
课程编号
Name
varchar
60
否
课程名称
ofrofession
bigint
8
否
所属专业编号
JoinTime
datatime
8
否
加入时间
表3表tb_Profession的结构
列名
数据类型
长度
主键否
功能描述
ID
bigint
8
是
专业编号
Name
varchar
200
否
专业名称
JoinTime
datatime
8
否
加入时间
表4表tb_Questions的结构
列名
数据类型
长度
主键否
功能描述
Id
bigint
8
是
试题编号
que_subject
varchar
50
否
试题主题
que_type
char
10
否
试题类型
que_joindate
datetime
8
否
试题加入时间
que_lessonid
int
4
否
所属课程号
que_professionid
int
4
否
所属专业号
que_taotiid
bigint
8
否
所属套题编号
optionA
varchar
50
否
选项A
optionB
varchar
50
否
选项B
optionC
varchar
50
否
选项C
optionD
varchar
50
否
选项D
que_answer
char
10
否
试题答案
note
varchar
50
否
注释
表5表tb_Student的结构
列名
数据类型
长度
主键否
功能描述
ID
varchar
50
是
学生证号
Name
varchar
20
否
学生姓名
PWD
varchar
20
否
学生密码
Sex
varchar
2
否
性别
JoinTime
datetime
8
否
加入时间
question
varchar
50
否
密码问题
answer
varchar
50
否
密码答案
profession
bigint
8
否
所选专业号
IPAddress
char
30
否
IP地址
表6表tb_Student的结构
列名
数据类型
长度
主键否
功能描述
res_id
bigint
8
是
试题结果编号
stu_id
varchar
50
否
所属学生编号
which_lesson
varchar
50
否
所属课程名称
taotiid
bigint
8
否
所属套题编号
taotiname
varchar
50
否
所属套题名称
res_single
int
4
否
单选成绩
res_more
int
4
否
多选成绩
res_total
int
4
否
总成绩
res_subdate
datetime
8
否
成绩提交时间
表7表tb_TaoTit的结构
列名
数据类型
长度
主键否
功能描述
ID
bigint
8
是
套题编号
Name
varchar
50
否
套题名称
LessonID
bigint
8
否
所属课程编号
JoinTime
datetime
8
否
加入时间
第四章系统详细
4.1后台登录模块设计
后台登录模块为本网络考试系统的主要页面,操作者可从此页面登录前台学生考试页面、学生注册页面、密码找回页面或后台管理员页面。登录前台考试页面及后台管理员页面必须通过验证用户名、密码和验证码正确与否,只有合法的用户才可以进入系统。当用户没有输入用户名或密码以及验证码为空时,系统会自动弹出"不允许为空"的消息提示框。"登录"按钮左侧的复选框功能为是否选择管理员登录,选中则登录后台管理员页面,反之登录为前台学生考试页面,后台登录页面运行效果如图1所示。
图1后台登录模块
1.前台页面设计
网站后台登录可以通过VS2005工具箱中"登录"选项卡内的"Login"组件设计而成,也可以自定义设计登录窗口。
本系统登录窗口为自定义设计窗口,设计组件主要有"HTML"选项卡中Table组件用于布局页面、"标准"选项卡中3个TextBox控件、4个Label控件、3个Button控件和一个CheckBox控件,这些控件具体信息及用途如表1所示。
表1前台页面用到的控件及用途
工具箱
组件名称
数量
用途
HTML
Table
1
布局页面
标准
CheckBox
1
验证管理员登录
标准
Button
3
登陆/注册/忘密
标准
TextBox
3
录入登陆用户名/密码/验证码
标准
Label
4
用户名/密码/验证码/显示验证码
控件的属性设置,可以通过前台代码实现,也可以在"控件属性"对话框中的设置实现,本页中使用的控件属性设置请参见如下代码:
管理员登陆
="Button2_Click"Text="注册"/>
="Button3_Click"Text="忘密"/>
2.后台功能代码
系统登录模块主要用于验证用户登录系统时输入的用户名、密码和验证码是否正确,在处理登录页面提交的数据时,首先会根据"管理员"复选框的值来判断是否登陆管理员页面,此功能代码首先if-else语句判断复选框CheckBoxList1控件是否被选中,如果被选中则执行核对用户名、密码和验证码而进入管理员页面,反之则会执行另一段代码,以验证非管理员登录信息,而进入学生考试页面,处理代码如下所示:
usingSystem;
usingSystem.Data;
usingSystem.Configuration;
usingSystem.Collections;
usingSystem.Web;
usingSystem.Web.Security;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.WebControls.WebParts;
usingSystem.Web.UI.HtmlControls;
usingSystem.Data.SqlClient;
publicpartialclassDefault:System.Web.UI.Page
{
Datacondataconn=newDatacon();
protectedvoidPage_Load(objectsender,EventArgse)
{
Session["StuName"]=this.txtUserName.Text;
if(!IsPostBack)
{
Randomrnd=newRandom();
//生成验证码
this.labValidate.Text=rnd.Next(1000,9999).ToString();
}
}
//==============================找回密码========================
protectedvoidButton3_Click(objectsender,EventArgse)
{
Page.Response.Redirect("InfoPwd.ASP.NETx");
}
//==============================新学生注册=======================
protectedvoidButton2_Click(objectsender,EventArgse)
{
Page.Response.Redirect("zhuce.ASP.NETx");
}
//==============================登录按钮=========================
protectedvoidButton1_Click(objectsender,EventArgse)
{
if(txtValidate.Text!=labValidate.Text)
{
Response.Write("alert('验证码错误');location='history.go(-1)'");
}
else
{
if(cblAdminLog.Items[0].Selected==true)
{
this.getcom(1);
}
else
{
this.getcom(2);
}
}
}
//=============================登录控制=====================
privatevoidgetcom(inti)
{
SqlConnectioncon=dataconn.getcon();
con.Open();
SqlCommandcom=con.CreateCommand();
switch(i)
{
case1:
com.CommandText="selectcount(*)fromtb_AdministratorwhereName='"+txtUserName.Text+"'andPWD='"+txtPwd.Text+"'";
intcount1=Convert.ToInt32(com.ExecuteScalar());//获取SQL语句的值强制转换成数值类型
if(count1>0)
{
Application["Name"]=txtUserName.Text;//成功
Application["PWD"]=txtPwd.Text;//成功
Page.Response.Redirect("HouAdmin/admin.ASP.NETx");
}
else
{
Response.Write("alert('用户名或密码有误!');location='history.go(-1)'");
return;
}
break;
case2:
com.CommandText="selectcount(*)fromtb_StudentwhereID='"+
上一篇:
ASP_net网络书店(论文和程序)
下一篇:
医学论文写作格式要求