web课程设计报告

Web开发技术课程设计

 

               

                院    系:        软件工程        

                班级学号:    软件13 -1(21,19)

                姓    名:          唐  波       

                同组成员:          史伟良       

指导教师:          王双利       

                     2014 年 12  月  12  日

                Web开发技术课程设计任务书

一、题目:学生信息管理系统

二、设计要求

(1)史伟良负责设计与实现管理系统登陆界面;唐波负责设计与实现管理系统增删改查界面。

(2)查阅相关资料,自学具体课题中涉及到的新知识。

(3)采用结构化、模块化程序设计方法,功能要完善,具有一定的创新。

(4)所设计的程序有输入、输出。

(5)按要求写出了课程设计报告,于设计结束后2天提交了。其主要内容包括:封皮、课程设计任务书,指导教师评语与成绩、目录、概述、软件总体设计、详细设计、软件的调试、总结、致谢、附录(带中文注释的程序清单)、参考文献。总体设计应配合软件总体模块结构图来说明软件应具有的功能;详细设计应用传统或N-S流程图和屏幕抓图说明;调试的叙述应配合出错场景的抓图来说明出现了哪些错误,如何解决的。

三、课程设计工作量

一般每人的程序量在200行有效程序行左右,不得抄袭。

四、课程设计工作计划

20##年12月8日,指导教师讲解布置题目,学生根据题目准备资料;

20##年12月8日,进行总体方案设计;

20##年12月8日~20##年12月10日,完成程序模块并通过独立编译;

20##年12月10日~20##年12月11日,将各模块集成为一完整的系统,并录入足够数据进行调试运行;

20##年12月11日~20##年12月12日,验收、撰写课程设计报告。

                            指导教师签章:            

                            专业主任签章:             

Web开发技术课程设计指导教师评语与成绩

                         目  录

一 概述............................................................................................... 1

二 总体方案设计............................................................................... 2

三 详细设计....................................................................................... 3

四 程序的调试与运行结果说明....................................................... 5

五 课程设计总结............................................................................. 12

       六 致谢............................................................................................. 13

参考文献........................................................................................... 14


                           一、概述

学生信息管理系统是一个典型的信息管理系统。作为计算机应用的一部分,使用计算机对学生档案进行管理,具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高的效率,也是学校科学化、正规化管理的重要条件。现代人事工作的信息量越来越大,而且信息的密度不断提高,靠传统的管理方法和人工操作手段已经无法搞好人事管理工作。而计算机作为数据处理系统,已逐渐成为人事管理现代化的重要手段,在人事管理中正在发挥着重要的作用。并能使学校学生信息管理更加方便。一方面对学校的众多学生的信息进行动态地管理、修改、添加、删除等操作十分方便快捷,不必再像原来一样准备一个巨大的档案库,节约了成本,提高了实效性,并减少了出错率.

                二、总体方案设计

(1) 学生信息录入模块.对新增的学生信息进行录入操作。

(2) 学生信息查询模块.为使用者提供各种不同的查询途径,可根据个人需要进行查询。

(3) 学生信息删除和修改模块.先对需要进行操作的学生信息进行查询,然后对已存的学生信息进行删除或者修改操作。

                 三、详细设计

 

                                       

 

四、数据库设计

登陆信息数据库

                          学生信息数据库

                 五、界面及代码

                    1.登陆界面

            

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Data.OleDb;

public partial class _Default : System.Web.UI.Page

{

    protected void Page_Load(object sender, EventArgs e)

    {

    }

    protected void Button1_Click(object sender, EventArgs e)

    {

        if(TextBox1.Text=="")

        {

            Response.Write("<script>alert('账户不能为空')</script>");

        }

        else

        {

            OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Administrator\Desktop\WebSite11\App_Data\123.mdb;Persist Security Info=True");

            con.Open();

            string sel = "select admin from admininfo where admin='" + TextBox1.Text + "'";

            OleDbCommand cmd = new OleDbCommand(sel, con);

            OleDbDataReader da = cmd.ExecuteReader();

            if(da.Read())

            {

                string a = da["admin"].ToString();

                    Session["admin"] = a;

                if(TextBox2.Text=="")

                {

                    Response.Write("<script>alert('密码不能为空')</script>");

                }

                else

                {

                    sel = "select pass from admininfo where pass='" + TextBox2.Text + "' ";

                    OleDbCommand cmd1=new OleDbCommand(sel,con);

                    OleDbDataReader da1=cmd1.ExecuteReader();

                    if(da1.Read())

                    {

                       

                        Response.Redirect("~/Default.aspx");

                        con.Close();

                    }

                    else

                    {

                         Response.Write("<script>alert('密码错误')</script>");

                        con.Close();

                    }

                }

            }

            else

            {

                Response.Write("<script>alert('账户不存在')</script>");

            }

        }

    }                            

}

               2.学生信息管理界面

              

    

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Data.OleDb;

using System.Data;

public partial class _Default : System.Web.UI.Page

{

    private void data(string a, string b)

    {

        OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Administrator\Desktop\WebSite11\App_Data\123.mdb;Persist Security Info=True");

        con.Open();

        if(a!="0")

        {

        OleDbCommand cmd = new OleDbCommand(a, con);

        cmd.ExecuteNonQuery();

        }

        if (b != "0")

        {

            OleDbDataAdapter da = new OleDbDataAdapter(b,con);

            DataSet ds = new DataSet();

            da.Fill(ds, "1");

            GridView1.DataSource = ds.Tables["1"].DefaultView;

            GridView1.DataBind();

        }

        con.Close();

    }

    protected void Page_Load(object sender, EventArgs e)

    {

        Panel1.Enabled = Panel1.Visible = false;

        注册日期.Text = DateTime.Now.ToShortDateString();

        string a="select * from 学生信息";

        if (!IsPostBack)

        {

            data("0", a);

        }

    }

    protected void Button1_Click(object sender, EventArgs e)

    {

        string a = "insert into 学生信息 (学号,姓名,性别,出生日期,专业,注册日期,住址) values ('" + 学号.Text + "','" + 姓名.Text + "','" + 性别.SelectedValue.ToString() + "','" + 出生日期.Text + "','" + 专业.Text + "','" + 注册日期.Text + "','" + 住址.Text + "')";

        string b = "select * from 学生信息";

        data(a,b);

    }

    protected void Button2_Click(object sender, EventArgs e)

    {

        学号.Text = 姓名.Text = 出生日期.Text = 专业.Text = 住址.Text = string.Empty;

        string a = "delete from 学生信息 where 学号='"+学号.Text+"'";

        string b = "select * from 学生信息";

        data(a,b);

    }

    protected void Button4_Click(object sender, EventArgs e)

    {

        if(DropDownList2.SelectedValue.ToString()=="学号")

        {

            string a = "0";

            string b = "select * from 学生信息 where 学号='"+TextBox7.Text+"'";

            data(a, b);

        }

        if (DropDownList2.SelectedValue.ToString() == "姓名")

        {

          

            string a = "0";

            string b = "select * from 学生信息 where 姓名='" +TextBox7.Text+ "' ";

            data(a, b);

           

        }

        if (TextBox7.Text == "")

        {

            string a = "0";

            string b = "select * from 学生信息";

            data(a, b);

        }

    }

   

protected void GridView1_RowDeleting1(object sender, GridViewDeleteEventArgs e)

{

        string a=GridView1.Rows[e.RowIndex].Cells[0].Text;

        string b="delete from 学生信息 where 学号='"+a+"'";

        string c = "select * from 学生信息";

        data(b, c);

}

protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)

{

    string b = GridView1.Rows[e.NewSelectedIndex].Cells[0].Text;

    string a = "select * from 学生信息 where 学号='"+b+"'";

    OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Administrator\Desktop\WebSite11\App_Data\123.mdb;Persist Security Info=True");

    con.Open();

    OleDbCommand cmd = new OleDbCommand(a, con);

    OleDbDataReader da = cmd.ExecuteReader();

    if (da.Read())

    {

        Panel1.Enabled = Panel1.Visible = true;

        Label1.Text = da["学号"].ToString();

        Label2.Text = da["姓名"].ToString();

        Label3.Text = da["性别"].ToString();

        Label4.Text = da["出生日期"].ToString();

        Label5.Text = da["专业"].ToString();

        Label6.Text = da["注册日期"].ToString();

        Label7.Text = da["住址"].ToString();

    }

   

}

protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)

{

    GridView1.EditIndex = -1;

    string a="select * from 学生信息";

    data("0",a);

}

protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)

{

    string a1 = GridView1.DataKeys[e.RowIndex].Value.ToString();

    string b1 = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString();

    string c1 = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString();

    string b = "update 学生信息 set 姓名='" + b1 + "',性别='" + c1 + "' where 学号='" + a1 + "'";

    string c = "select * from 学生信息";

    data(b, "0");

    GridView1.EditIndex = -1;

    data("0", c);

}

protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)

{

    GridView1.EditIndex = e.NewEditIndex;

    string a="select * from 学生信息";

    data("0",a);

}

protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)

{

    GridView1.PageIndex = e.NewPageIndex;

    string a = "select * from 学生信息";

    data("0", a);

}}

六、程序的调试与运行结果说明

1.密码输入错误时

                    

2.用户名输入错误时

                    

 

                  七、课程设计总结

 在这次设计中遇到了很多实际性的问题,在实际设计中才发现,书本上理论性的东西与在实际运用中的还是有一定的出入的,所以有些问题不但要深入地理解,而且要不断地更正以前的错误思维。一切问题必须要靠自己一点一滴的解决,而在解决的过程当中你会发现自己在飞速的提升。对与学生信息管理系统,其程序是比较简单的,主要是解决程序设计中的问题,而程序设计是一个很灵活的东西,它反映了你解决问题的逻辑思维和创新能力,它才是一个设计的灵魂所在。因此在整个设计过程中大部分时间是用在程序上面的。很多子程序是可以借鉴书本上的,但怎样衔接各个子程序才是关键的问题所在,这需要对系统的结构很熟悉。因此可以说系统的设计是软件和硬件的结合,二者是密不可分的。通过这次课程设计我也发现了自身存在的不足之处,虽然感觉理论上已经掌握,但在运用到实践的过程中仍有意想不到的困惑,经过一番努力才得以解决。

这也激发了我今后努力学习的兴趣,我想这将对我以后的学习产生积极的影响。通过这次设计,我懂得了学习的重要性,了解到理论知识与实践相结合的重要意义,学会了坚持、耐心和努力,这将为自己今后的学习和工作做出了最好的榜样。我认为这次的课程设计意义很深。

                      

                          致谢

    在这次设计中遇到了很多实际性的问题,在实际设计中才发现,书本上理论性的东西与在实际运用中的还是有一定的出入的,所以有些问题不但要深入地理解,而且要不断地更正以前的错误思维。一切问题必须要靠自己一点一滴的解决,而在解决的过程当中你会发现自己在飞速的提升。经 过 这 段 时 间 的 开 发 ,终 于 完 成 了 课 题 。 学 到 的 知 识 都 是 很 值得 珍 惜 的。首先,我们要感谢指导课程设计的王双立老师,给予我们悉心的指导。老师多次询问编写进程,并为我们指点迷津,帮助我们开拓研究思路,精心点拨、热忱鼓励。您对同学们一直以来的鼓励,一直以来的教导和关心,在上机课时,您也给予了我很大的帮助,感谢您一直以来的悉心教导以及帮助,让我增加了学习好专业课的信心。

   其次,我要感谢我们的小组长,他在课设中是最辛苦的,当我们有不太懂的地方去问他时,他总能耐心的给我们解疑,非常的感谢小组长的认真负责与耐心。最后我要感谢小组组员们的互帮互助,这样我们才能完成这次课设,虽然我们小组的课设不是很完美,大家的工作量也不是很多,但是在这次课设中我学到了很多,这 次 的 课 设 结 束 了,但 是 还 有 许 许 多 多 的 东 西 需 要 我 去 学 习 , 我 会 继 续 努 力 的。

 

 

 

 

 

                      参考文献

[1]清华大学《Web应用开发技术》(第二版), 北京:清华大学出版社, 20##年。

[2]清华大学《ASP.NET上机实验指导》, 北京:清华大学出版社, 20##年。

相关推荐