一.引言
1.开发背景
在网络迅速发展的今天,教育事业的发展也逐步实行网络化,校园的管理也开始
公开化和网络化,为了让同学们更好,更快的了解学校信息,同时解决信息因传输落
后而丢失的问题,学院开发网络管理系统来管理校园信息是相当有必要的,这也是教
育事业发展的趋势。
2.实现目标
开发一个学生信息管理系统,可以对学生的基本信息,成绩信息进行查询,修改等功
能
二.需求分析
各学校为了适应现代教育的发展,同时更好的管理校园信息,使同学们能够在第一时
间了解到校园信息,学校决定开发一个网络管理系统。具体要求如下:
◇能完成信息的录入;
◇实现对学籍的管理和维护;
◇学生能够注册,登录后能够查询自己的成绩和一些公开信息;
◇管理学生成绩。
1.性能需求
(1) 硬件环境
处 理 器:Intel Pentinum3 或 更 高 的 处 理 器 , 或 任 何 运 行 在 Microsoft Windosoft NT
Workstation 的 Alpha 的处理器.
内 存: 120MB 以上。
硬盘空间:最少安装至少需要 120M,完全安装至少需要 300M.
(2) 软件环境
操作系统: Windows 98 以上的版本
数 据 库: SQL Server2000 以上的版本。
开发软件: Visual Studio.net
三.总体设计
1.模块功能
学生信息管理系统是一个网络式管理系统,其中包括:系统登录,成绩查询,
数据录入,学籍管理,成绩管理和用户注册的模块。各个模块的具体功能如下:
◇用户注册:用于注册新用户的。
◇系统登录:由于系统有权限控制,所以使用系统登录模块来验证用户是否合法,同时
验证权限。
◇成绩查询:用于用户登录后查询本学期成绩
◇数据录入:主要完成学生信息的输入
◇学籍管理:用于管理和维护学生的学籍
◇成绩管理:用于输入学生成绩
- 0 -
2.模块结构
学生信息管理系统
系
统
登
录
成
绩
查
询
数
据
录
入
主
界
面
学
籍
管
理
成
绩
管
理
系
统
注
册
系
统
注
销
四. 详细设计
本系统由用户登录,用户注册,页面提示,学生信息管理系统主界面,成绩查询,学籍
管理,学生信息录入和成绩录入八个页面组成,界面和代码如下:
1.用户登录界面
- 1 -
代码如下:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
未登录
'连接数据库
'记录并判断是否登录
Session("login") = 0
If Page.IsValid Then
Dim conn As New
SqlClient.SqlConnection("server=.;user=sa;password=;database=s
tudent")
conn.Open()
Dim cmd As New SqlClient.SqlCommand("select * from users where
loginname='" & Txtname.Text.Trim & "'", conn)
Dim dr As SqlClient.SqlDataReader
dr = cmd.ExecuteReader
If dr.Read Then
If Trim(dr(1)) = Txtpassword.Text.Trim Then
Session("login") = 1
Session("date") = Now
Session("loginname") = Txtname.Text.Trim
Session("userstype") = Trim(dr(2))
Response.Redirect("default.aspx")
'记录登录日期和时间
'记录用户名
记录用户类型
'进入主界面
'已登录
Else
Session("Appearance") = "mm"
'记录密码出错
End If
Else
Session("Appearance") = "yh"
'记录用户名不存在
End If
- 2 -
Response.Redirect("expression.aspx")
dr.Close()
conn.Close()
'转到提示界面
End If
Txtname.Text = ""
End Sub
2.用户注册界面
代码如下:
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button2.Click
Dim conn As New
SqlClient.SqlConnection("server=.;user=sa;password=;database=student
")
Dim cmd As New SqlClient.SqlCommand("select * from users where
loginname='" & Trim(Txtname.Text) & "'", conn)
conn.Open()
Dim dr As SqlClient.SqlDataReader
dr = cmd.ExecuteReader
If dr.Read Then
Label1.Text = "用户名已占用!"
Else
- 3 -
Label1.Text = "该用户名可用!"
End If
dr.Close()
conn.Close()
End Sub
Private Sub connection()
Dim conn As New
SqlClient.SqlConnection("server=.;user=sa;password=;database=student")
Dim cmd As New SqlClient.SqlCommand("select * from users", conn)
End Sub
Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Handles Button1.Click
If Me.IsValid Then
Dim conn As New
SqlClient.SqlConnection("server=.;user=sa;password=;database=studen
t")
conn.Open()
Dim da As New SqlClient.SqlDataAdapter("select * from users ", conn)
Dim ds As New DataSet
da.Fill(ds)
Dim comm As New SqlClient.SqlCommandBuilder(da)
da.InsertCommand = comm.GetInsertCommand
da.UpdateCommand = comm.GetUpdateCommand
Dim i As Int32
For i = 0 To ds.Tables(0).Rows.Count - 1
If Trim(ds.Tables(0).Rows(i).Item(0)) = Txtname.Text.Trim Then
conn.Close()
Session("Appearance") = "cz"
Response.Redirect("expression.aspx")
Exit Sub
End If
Next
Dim trow As DataRow
trow = ds.Tables(0).NewRow
trow.Item(0) = Trim(Txtname.Text)
trow.Item(1) = Trim(Txtpassword.Text)
trow.Item(2) = Trim(DropDownList1.SelectedItem.Text)
trow.Item(3) = Trim(DropDownList2.SelectedItem.Text)
trow.Item(4) = Trim(TextBox5.Text)
- 4 -
trow.Item(5) = Trim(TextBox6.Text)
trow.Item(6) = Trim(DropDownList3.SelectedItem.Text)
trow.Item(7) = Trim(TextBox7.Text)
If RadioButtonList1.Items(0).Value = 0 Then
trow.Item(8) = Trim(RadioButtonList1.Items(0).Text)
Else
trow.Item(8) = Trim(RadioButtonList1.Items(1).Text)
End If
trow(9) = Trim(TextBox8.Text)
trow(10) = Trim(TextBox9.Text)
trow(11) = Trim(TextBox10.Text)
trow(12) = Trim(TextBox11.Text)
ds.Tables(0).Rows.Add(trow)
da.Update(ds)
conn.Close()
Session("Appearance") = "zc"
Response.Redirect("expression.aspx")
End If
End Sub
3.页面提示界面
- 5 -
代码如下:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
'在此处放置初始化页的用户代码
Select Case Session("Appearance")
Case "zc"
Label1.Text = "注册成功!"
Case "cz"
'注册成功
'注册失败
Label1.Text = "注册失败!用户名已存在!"
Case "mm"
Label1.Text = "登录失败!密码错误!"
Case "yh"
Label1.Text = "登录失败!用户名不存在!"
Case "wdr"
Label1.Text = "请先登录!"
Case "cj"
Label1.Text = "信息已存在!"
Case "wqx"
'密码错误
'用户名错误
'用户未登录
'录入信息已存在
'用户权限不足
Label1.Text = "对不起!
Session("userstype") + " 你无此权限!"
" + Session("loginname") +
End Select
End Sub
4.学生信息管理主界面
- 6 -
代码如下:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
'在此处放置初始化页的用户代码
Label1.Text = "您好!" + Session("loginname") + Session("userstype") + "
您登录的时间是:" + Session("date")
Dim number As Int32 = Application("number")
对象用于记录当前访问站点的人数
If number Then
'定义一个application
Application.Lock()
number = number + 1
Application("number") = number
Application.UnLock()
Else
Application.Lock()
number = 1
Application("number") = number
Application.UnLock()
End If
Label2.Text = "您是第" & Application("number") & "个访问本站点的"
End Sub
5.成绩查询
- 7 -