基于.net开发的web版药管理信息系统--登录/注册页面布局(2)

登录和注册页面其实原理大致相同,所以页面的内容也是大同小异的。

先看一下Bootstrap3的登录页模版(https://v3.bootcss.com/examples/signin/):

基于.net开发的web版药管理信息系统--登录/注册页面布局(2)_第1张图片

主要有几个部分:标题、Label(主要做绑定)、两个input、一个checkbox选择、还有一个button。

根据我们的需求:①登录页面账号、密码是必须的,所以两个输入是需要留下的。

②这个checkbox有点记住密码的意味,对于我们不是必须的功能,但是我们可以利用checkbox去做一个选择。由于我们系统有分为顾客的和管理员的,所以可以利用这个checkbox去进行选择,这里就需要2个checkbox。

③登录页面,一般还有注册账号之类的,在这里需要设置一个注册跳转,这个登录button需要留下。

(利用样式时候,记得添加所需要引入的css文件) 


    

页面的布局: 



    

既然有两个CheckBox,如果直接这样的话会导致我两个都可以选,所以可以加js进行控制只能单选。(或者还有一种组的用法?) 

布局完成的效果:基于.net开发的web版药管理信息系统--登录/注册页面布局(2)_第2张图片 

同理的注册界面,根据需求,需要填写更多的信息,要给予它一个名称、性别,或者你想要加个电话,都可以。

以下是我的页面效果:基于.net开发的web版药管理信息系统--登录/注册页面布局(2)_第3张图片

实现注册页面的代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="register.aspx.cs" Inherits="WebApplication1.register" %>






     
    
    
    

    注册

    
    
     





    

 

 

后端逻辑代码:

Login.aspx.cs:

页面加载清空一下Session.

protected void Page_Load(object sender, EventArgs e)
        {
            Session["UserID"] = "";
        }

 连接数据库判断,DBuse是封装的连接还有一些函数。

 protected void Button1_Click(object sender, EventArgs e)//登录
        {
            string name = name_textbox.Text.ToString();
            string password = password_textbox.Text.ToString();
            int flag = -1;
            if (CheckBox2.Checked)
            {
                flag = 0;
                if (DBuse.Check_Logins(name,password,flag))
                {
                    Session["UserID"] = name_textbox.Text.Trim();
                    Response.Redirect("Customer_main.aspx", true);
                } 
            }
            else if (CheckBox1.Checked)
            {
                flag = 1;
                if (DBuse.Check_Logins(name, password, flag))
                {
                    Session["UserID"] = name_textbox.Text.Trim();//账号
                    Response.Redirect("main.aspx", true);
                }
            }
            Response.Write("");
        }

        protected void Button2_Click(object sender, EventArgs e)
        {
            Response.Redirect("register.aspx", false);
        }

注册后端代码:

register.aspx.cs: 

protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            string acountnum = name_textbox.Text.ToString();
            string password = password_textbox.Text.ToString();
            string name = TextBox1.Text.ToString();
            int sort_flag;
            int sex_flag;
            if (CheckBox1.Checked)
            {
                sort_flag = 1;//顾客为1
            }
            else { sort_flag = 0; }//管理员为0
            if(CheckBox3.Checked)
            {
                sex_flag = 1;//男生为1 
            }
            else { sex_flag = 0; }

            if(DBuse.register(acountnum,password,sort_flag,sex_flag,name))
            {
                Response.Write("");
            }
            else
            {
                Response.Write("");
            }

        }
        protected void Button2_Click(object sender, EventArgs e)
        {
            Response.Redirect("Login.aspx", true);
        }

 DBuse类里面定义的函数:这里的的注册有点绕,不过都是简单的查询和增加,主要是设计用户表的时候设计不好,所以这里注册的时候留下了坑要填。

 public class DBuse
    {
        public static SqlConnection DB()//开启连接
        {
            SqlConnection con = new SqlConnection("server=连接的服务器名字;uid=用户;pwd=密码;database=数据库名称");
            return con;
        }

        //登录
        public static bool Check_Logins(string studentNum, string studentPwd,int flag)
        {
            SqlConnection conn = DB();
            conn.Open();
            string sql = "";
            if (flag == 1)
            {  sql = "SELECT Acount,password from Logins where Acount=@username and password=@pwd and flag=1"; }
            else if(flag==0) sql = "SELECT Acount,password from Logins where Acount=@username and password=@pwd and flag=0";

            SqlCommand cmd = new SqlCommand(sql, conn);

            cmd.Parameters.Add(new SqlParameter("@username", SqlDbType.NVarChar));
            cmd.Parameters["@username"].Value = studentNum;
            cmd.Parameters.Add(new SqlParameter("@pwd", SqlDbType.NVarChar));
            cmd.Parameters["@pwd"].Value = studentPwd;

            SqlDataReader check = cmd.ExecuteReader();

            if (!check.Read())
            {
                conn.Close(); return false;
            }
            else
            {
                if (check["password"].ToString().Trim() == studentPwd)
                {
                    conn.Close();
                    return true;
                }
                conn.Close();
                return false;
            }
          
        }
      
        public static bool register(string Num, string Pwd,int sort_flag,int sex_flag,string name)
        {
            SqlConnection conn = DB();
            conn.Open();
            string sex = "";
            string check_sql="";
            string sql = "";
            string customer_sql = "";
            string saleperson_sql="";
            string b = "";


            if (sex_flag==1)
            {
                sex = "男";
            }
            else
            {
                sex = "女";
            }
            if(sort_flag==1)//顾客sort_flag=1
            {
                check_sql = "select Acount from Logins where Acount ='" + Num+"' and flag=0";
                SqlCommand cmds = new SqlCommand(check_sql, conn);
                SqlDataReader reader = cmds.ExecuteReader();
                if (reader.Read())//判断表中是否存在
                {
                    conn.Close();
                    return false;
                }
                reader.Close();

                check_sql = "select count(*) from client";

                SqlCommand cmd_client = new SqlCommand(check_sql, conn);
                SqlDataReader reader_client = cmd_client.ExecuteReader();

                while (reader_client.Read())

                { b = reader_client[0].ToString(); }

                reader_client.Close();

                int bs = Convert.ToInt32(b);

                bs++;

                sql = string.Format("Insert into Logins values('{0}','{1}','{2}','{3}','{4}')"
                    , Num, Pwd, name,sex,0);
                customer_sql= string.Format("Insert into client (cno,cname,csex) values('"+bs+ "','" + name + "','" + sex + "')");
            }
            else
            {
                check_sql = "select Acount from Logins where Acount='" + Num + "'and flag=1";
                SqlCommand cmds = new SqlCommand(check_sql, conn);
                SqlDataReader reader = cmds.ExecuteReader();
                if (reader.Read())
                {
                    conn.Close();//判断表中是否存在
                    return false;
                }
                reader.Close();

                check_sql = "select count(*) from client";

                SqlCommand cmd_client = new SqlCommand(check_sql, conn);
                SqlDataReader reader_client = cmd_client.ExecuteReader();

                while (reader_client.Read())

                { b = reader_client[0].ToString(); }

                reader_client.Close();

                int bs = Convert.ToInt32(b);

                bs++;

                sql = string.Format("Insert into Logins values('{0}','{1}','{2}','{3}','{4}')"
                  , Num, Pwd, name,sex,1);
                saleperson_sql = string.Format("Insert into agency (ano,aname,asex) values('" + bs + "','" + name + "','" + sex + "')");

                SqlCommand cmd_sale = new SqlCommand(sql, conn);
                int count_s = cmd_sale.ExecuteNonQuery();
                if (count_s > 0)
                {
                    SqlCommand cmd_saleperson = new SqlCommand(saleperson_sql, conn);
                    int counts = cmd_saleperson.ExecuteNonQuery();
                    if (counts > 0)
                    {
                        conn.Close();
                        return true;
                    }
                    else
                    {
                        conn.Close();
                        return false;
                    }
                }
            }
            SqlCommand cmd = new SqlCommand(sql, conn);
            int count = cmd.ExecuteNonQuery();
            if(count>0)
            {
                SqlCommand cmd_clients = new SqlCommand(customer_sql, conn);
                int counts = cmd_clients.ExecuteNonQuery();
                if (counts > 0)
                {
                    conn.Close();
                    return true;
                }
                else
                {
                    conn.Close();
                    return false;
                }
            }
            else
            {
                conn.Close();
                return false;
            }
        }
    }

登录注册页面完成。(代码中引用文件的地方,需要根据你们的实际进行配置,还有icon图标亦是如此)

 

你可能感兴趣的:(Web)