网站地图| 免费获取|
毕业论文网
  • 网站首页|
  • 论文范文|
  • 论文降重|
  • 职称论文发表|
  • 合作期刊|
  • 论文下载|
  • 计算机论文|
  • 外文翻译|
  • 免费论文|
  • 论文资料|
  • 论文开题报告
搜索

当前位置:毕业论文网 -> 免费论文 -> 计算机论文 -> 高校科研及成果在线管理系统开发(五)
计算机论文资料| ASP设计| Delphi| VB设计| JSP设计| ASP.NET设计| VB.NET| java设计| VC| pb| VS| dreamweaver| c#.net| vf| VC++| 计算机论文范文| 论文下载| 自动化论文

高校科研及成果在线管理系统开发(五)

最新活动:微信集50个赞就可获取任意一篇钻石会员文档。详情见微信集赞换文档
高校科研及成果在线管理系统开发(五)  5  详细设计
5.1 后台登录注册模块
5.1.1后台登录注册模块
(1)登录页面的功能
登录模块的主要功能是提供给各种类型的用户的登录,输入用户名和密码以后进行验证,如果验证成功就进入相应的页面继续操作,若验证失败,就提示相应的信息告知用户。
当院级管理员登录成功后,就进入了院级管理员后台管理页面。此页面提供了系统维护,项目管理,成果管理,留言管理功能的链接,点击相应按钮就会进入相应页面继续操作。
当系级管理员登录成功时,就会进入系级管理员后台管理页面,此页面和院级管理员后台管理页面其实是同一个页面,只是功能有所变化,不过大体上是相似的。可以进行系统维护及成果管理。
当教师登录成功时,就会进入教师后台管理页面,此页面和院级管理员后台管理页面类似,只是功能有所变化。可以进行项目管理,成果管理及留言管理等操作。
(2)登录页面的页面设置
本页面有两个TextBox控件,用来输入用户名和用户密码。一个DropDownList控件,用来选择用户类型。一个Button控件,用来完成登录验证功能。还有就是用户登录必须输入验证码的实现,来有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试。
(3)登录页面的代码实现
本页面的核心功能是由“登录”按钮实现的,其部分代码如下:
If(string.Compare(Request.Cookies["CheckCode"].Value,TextBox1.Text.ToUpper(), true) != 0) //判断验证码是否正确
{
Response.Write("<script language='java script'>alert('对不起,验证码错误,请重新输入')</script>");
return;
}
else

{
SqlConnection conn = new SqlConnection("Data Source=YLJ\\sqlexpress;Initial Catalog=ylj;Integrated Security=True;Pooling=False");//数据库连接
conn.Open();//打开数据库
SqlCommand com = new SqlCommand("select * from tb_Admin where username='" + this.UserName.Text + "'and password='" + this.Password.Text + "'",       conn); 
SqlDataReader dr = com.ExecuteReader();//判断用户名和密码是否匹配
dr.Read();
If (dr.HasRows)//用户名和密码匹配
{//将用户真实姓名等可能有用的各种值放入Session,传递到下一页 
Session["UserName"] = dr["UserName"].ToString();
Session["Password"] = dr["Password"].ToString();
Response.Redirect("Ymanager.aspx");
//验证结果为院级管理员,进入其后台页面
         }
其他用户的登录基本类似,故不再累赘。
5.1.2验证码功能模块的实现
首先添加一新项CheckCode.aspx,其代码如下:
protected void Page_Load(object sender, EventArgs e)
    {   //生成带有随机数字的图片
        CreateCheckCodeImage(GenerateCheckCode());
    }
    private string GenerateCheckCode()
    {   //生成随机数字串
        int number;
        char code;
        string checkcode = string.Empty;
        System.Random random = new Random();
        for (int i = 0; i < 4; i++)
        {
            number = random.Next();
            if (number % 2 == 0)
                code = (char)('0' + (char)(number % 10)); 
            else
                code = (char)('A' + (char)(number % 26));
            checkcode += code.ToString();
        }
        Response.Cookies.Add(new HttpCookie("CheckCode", checkcode));
        return checkcode;
    }
    private void CreateCheckCodeImage(string checkcode)
    {   
        if (checkcode == null || checkcode.Trim() == string.Empty)
            return;
        System.Drawing.Bitmap image=new System.Drawing.Bitmap((int)Math.Ceiling(checkcode.Length*12.5),22);
        Graphics g = Graphics.FromImage(image);
        try
        {   //生成随机生成器
            Random random = new Random();
            //清空图片背景色
            g.Clear(Color.White);
//画图片的背景噪音线 
            for (int i = 0; i < 2; i++)
            {
                int x1 = random.Next(image.Width);
                int x2 = random.Next(image.Width);
                int y1 = random.Next(image.Height);
                int y2 = random.Next(image.Height);
                g.DrawLine(new Pen(Color.Black), x1, y1, x2, y2);
            }
            Font font = new System.Drawing.Font("Arial", 12, (System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic));
            System.Drawing.Drawing2D.LinearGradientBrush brush = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height), Color.Blue, Color.DarkRed, 1.2f, true);
            g.DrawString(checkcode, font, brush, 2, 2);
            //画图片的前景噪音点
            for (int i = 0; i < 100; i++)
            {
                int x = random.Next(image.Width);
                int y = random.Next(image.Height);
                image.SetPixel(x, y, Color.FromArgb(random.Next()));
            }
            //画图片的边框线
           g.DrawRectangle(new Pen(Color.Silver), 0, 0, image.Width - 1, image.Height - 1);
            System.IO.MemoryStream ms = new System.IO.MemoryStream();
            image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
            Response.ClearContent();
            Response.ContentType = "image/Gif";
            Response.BinaryWrite(ms.ToArray());
        }
        finally
        {
            g.Dispose();
            image.Dispose();
        }
    }
然后添加一Image控件,将其Url指向CheckCode.aspx到此验证码功能基本实现。
5.2 院级管理员后台管理模块
(1)院级管理员后台管理页面的功能
当院级管理员登录成功后,就进入了院级管理员后台管理页面。此页面提供了系统维护,项目管理,成果管理,留言管理功能的链接,点击相应按钮就会进入相应页面继续操作。
(2)院级管理员后台管理页面的页面设置
Label控件用来提示相应信息。Menu控件用来链接相应操作页面,并且传递相应值。此页面最重要的是查询功能,是在母版页里实现的。
(3)院级管理员后台管理页面的实现
用户登录时首先选择用户类型,当用户选择院级管理员类型登录后,会从登录页面传来UserName的值,在加载此页面时进行判断,当判断是院级管理员以后,完成如下操作:
SqlCommand com = new SqlCommand("select * from tb_Admin where username='" + this.UserName.Text + "'and password='" + this.Password.Text + "'", conn);
SqlDataReader dr = com.ExecuteReader(); //判断用户名和密码是否匹配
dr.Read();
if (dr.HasRows)
 { //将用户真实姓名等可能有用的各种值放入Session,传递到下一页面
    Session["UserName"] = dr["UserName"].ToString();
    Session["Password"] = dr["Password"].ToString();
    Session["Name"] = dr["Name"].ToString();
    Response.Redirect("Ymanager.aspx");
 }
院级管理员后台管理页面运行后如图5.1所示。

图5.1 院级管理员后台管理页面Ymanager.aspx
(4)院级管理员后台管理页面的相关链接页面
5.2.1系统维护页面
(1)添加用户页面功能
此页面可以添加院级管理员各个系科的管理员。
 (2)删除编辑用户信息页面的页面设置
利用一个GridView来显示所有用户的姓名和所属院系信息。当院级管理员选择删除用户时,该用户将被删除。当院级管理员选择修改时,修改页面会自动获取数据库里该用户的各种信息并显示,院级管理员可以有选择性的修改其信息,点击修改,会自动覆盖原有信息,将新信息写入数据库。TextBox控件用来显示用户的用户名,用户密码,所属系科及性别,并可以修改。
(3)编辑用户信息页面的实现
提取你的个人信息用如下代码实现对个人信息的提取:
if (!IsPostBack)
{
string str = "select * from tb_user where UserName='" + Request.QueryString["UserName"].ToString() + "'";
//根据上一页面传送的用户名值从数据库取出用户的其他信息
SqlConnection conn = new SqlConnection("Data Source=YLJ\\sqlexpress;Initial Catalog=ylj;Integrated Security=True;Pooling=False");
conn.Open();
//连接数据库
SqlDataAdapter da = new SqlDataAdapter(str, conn);
DataSet ds = new DataSet();
da.Fill(ds);
//将取出的值填充到DataSet
//使用DataRowView将取出的值输出到文本框显示出来
DataRowView drv = ds.Tables[0].DefaultView[0];
TextBox1.Text = Convert.ToString(drv.Row["UserName"]);
TextBox2.Text = Convert.ToString(drv.Row["Password"]);
TextBox3.Text = Convert.ToString(drv.Row["Name"]);
TextBox4.Text = Convert.ToString(drv.Row["Sex"]);
TextBox5.Text = Convert.ToString(drv.Row["Department"]);
TextBox6.Text = Convert.ToString(drv.Row["Post"]);
//关闭数据库
conn.Close();
}
“修改”按钮用如下代码实现对个人信息的更新:
string str = "update tb_user set UserName='" + TextBox1.Text.Trim() + "',Password='" + TextBox2.Text.Trim() + "',Name='" + TextBox3.Text.Trim() + "',Sex='" + TextBox4.Text.Trim() + "',Department='" + TextBox5.Text.Trim() + "',Post='" + TextBox6.Text.Trim() + "' where UserName='"+Request.QueryString["UserName"].ToString()+"'";
//将文本框修改过的值重新写入数据库,并覆盖原有记录
SqlConnection conn = new SqlConnection("Data Source=YLJ\\sqlexpress;Initial Catalog=ylj;Integrated Security=True;Pooling=False");
conn.Open();
//打开数据库连接
SqlCommand comm = new SqlCommand(str, conn);
comm.ExecuteNonQuery();
//执行SQL命令
Response.Write("<script>alert('已成功修改!');location='DelUser.aspx'</script>");
删除用户信息页面运行后如图5.2所示,编辑用户信息页面运行后如图5.3所示。

图5.2 选择删除修改用户信息页面DelUser.aspx


首页 上一页 2 3 4 5 6 下一页 尾页 5/6/6

高校科研及成果在线管理系统开发(五)由毕业论文网(www.huoyuandh.com)会员上传。
原创论文资料流程 相关论文
上一篇:高校教材管理系统的设计与实现 下一篇:学生学籍管理系统设计与实现
推荐论文 本专业最新论文
Tags:高校 科研 成果 在线 管理系统 开发 2022-05-26 09:52:39【返回顶部】
精彩推荐
发表论文

联系方式 | 论文说明 | 网站地图 | 免费获取 | 钻石会员 | 硕士论文资料


毕业论文网提供论文范文,论文代发,原创论文资料

本站部分文章来自网友投稿上传,如发现侵犯了您的版权,请联系指出,本站及时确认并删除  E-mail: 17304545@qq.com

Copyright@ 2009-2020 毕业论文网 版权所有