zoukankan      html  css  js  c++  java
  • WebForm---增删改(内置对象)

    一、添加

    前台代码:

    <body>
    
    
        <form id="form1" runat="server">
            <h1>用户添加</h1>
        用户名:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><br /><br />
            
            密码:<asp:TextBox ID="TextBox3" runat="server" TextMode="Password"></asp:TextBox><br /><br />
            确认密码:<asp:TextBox ID="TextBox4" runat="server" TextMode="Password"></asp:TextBox><br /><br />
            昵称:<asp:TextBox ID="TextBox6" runat="server"></asp:TextBox><br /><br />
            性别:<asp:RadioButtonList ID="RadioButtonList1" runat="server" RepeatDirection="Horizontal" RepeatLayout="Flow">
                <asp:ListItem Value="true" Selected="True">男</asp:ListItem>
                <asp:ListItem Value="false">女</asp:ListItem>
            </asp:RadioButtonList><br /><br />
            生日:<asp:DropDownList ID="DropDownList2" runat="server"></asp:DropDownList>年<asp:DropDownList ID="DropDownList3" runat="server"></asp:DropDownList>月<asp:DropDownList ID="DropDownList4" runat="server"></asp:DropDownList>日<br /><br />
            民族:<asp:DropDownList ID="DropDownList1" runat="server" Width="122px"></asp:DropDownList><br /><br />
           &nbsp &nbsp &nbsp &nbsp <asp:Button ID="Button1" runat="server" Text="注 册" /><br />
            <asp:Label ID="Label1" runat="server" Text=""></asp:Label>
            
    
        
        </form>
    
    
    
    </body>
    View Code

     需要 对 性别、生日、民族、密码 操作:

    1、性别:默认选中: <asp:ListItem Value="true" Selected="True">男</asp:ListItem>

     2、生日 3、民族:

     protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)//数据绑定
            {
                for (int i = DateTime.Now.Year; i >= 1900; i--)
                {
                    //添加年,创造一个ListItem,让其每循环一次就造一个
                    ListItem li = new ListItem(i.ToString(),i.ToString());
                    DropDownList2.Items.Add(li);
                }
    
                for (int i = 1; i <= 12; i++)
                {
                    //
                    ListItem li = new ListItem(i.ToString(), i.ToString());
                    DropDownList3.Items.Add(li);
                }
    
                for (int i = 1; i <= 31; i++)
                {
                    //
                    ListItem li = new ListItem(i.ToString(), i.ToString());
                    DropDownList4.Items.Add(li);
                }
    
                //取出民族的数据
                DropDownList1.DataSource = new NationDA().Select();
                DropDownList1.DataTextField = "NationName";
                DropDownList1.DataValueField = "NationCode";
                DropDownList1.DataBind();
            }
            
        }

    4、密码 :

    JS验证一个 点击添加按钮,如果两次密码输入不一致,点击添加按钮不刷新页面,首先在前台确定密码框后面加一个Lable,来显示

    JS写在head里:

     <script type="text/javascript">
            window.onload = function () {/*document操作取出密码框里内容*/
                document.getElementById("Button1").onclick = function () {
                    var pwd1 = document.getElementById("TextBox3").value;
                    var pwd2 = document.getElementById("TextBox4").value;
                   /* alert(pwd1);检测一下*/
                   /* alert(pwd2);*/
                    if (pwd1 != pwd2) {
                        document.getElementById("Label2").innerText = "两次密码输入不一致";
                        return false;/*密码不一阻止刷新,一样就刷新*/
                    }
                };
            };
    
        </script>
    
        <style type="text/css">
            #Label2 {
            
            color:red;/*Label2里所呈现的文字显示红色*/
            }
    
        </style>
    </head>

     点击添加按钮,把添加的内容填到数据库,并能显示在界面。添加点击事件里共  4步。

    数据操作类里 做一个添加的方法:

     public bool Insert(Users u)
        {//添加
            bool isok = false;
            cmd.CommandText = "insert into Users values(@a,@b,@c,@d,@e,@f)";
            cmd.Parameters.Clear();
            cmd.Parameters.Add("@a", u.UserName);
            cmd.Parameters.Add("@b", u.PassWord);
            cmd.Parameters.Add("@c", u.NickName);
            cmd.Parameters.Add("@d", u.Sex);
            cmd.Parameters.Add("@e", u.Birthday);
            cmd.Parameters.Add("@f", u.Nation);
    
            conn.Open();
            try
            {
                cmd.ExecuteNonQuery();
                isok = true;
            }
            catch { }
            conn.Close();
            return isok;
        }
    View Code

     <a href="zhuce.aspx" target="_blank">添加用户</a>   超链接到注册界面并新开一个网页页面;

     Response.Write("<script>this.opener.location.href='Main.aspx';this.close();</script>"); 添加完点确定关闭当前页,显示主页并且刷新。

        void Button1_Click(object sender, EventArgs e)//委托
        {
           //1、构建一个Users对象
            Users u = new Users();
            u.UserName = TextBox1.Text;
            u.PassWord = TextBox3.Text;
            u.NickName = TextBox6.Text;
            u.Sex =Convert.ToBoolean( RadioButtonList1.SelectedItem.Value);
            string data=DropDownList2.SelectedValue+"-"+DropDownList3.SelectedValue+"-"+DropDownList4.SelectedValue;
            u.Birthday =Convert.ToDateTime( data);
            u.Nation = DropDownList1.SelectedItem.Value;
    
            //2、将此对象添加到数据库去,先在UserDA里添加方法
            bool ok = new UsersDA().Insert(u);
            //3、提示添加成功
            if (ok)
            {
                Response.Write("<script>alert('添加成功!')</script>");
                Response.Write("<script>this.opener.location.href='Main.aspx';this.close();</script>");
                //Response.Redirect("Main.aspx");//重定项
                
            }
            else
            {
                Response.Write("<script>alert('添加失败!')</script>");
            }
            //4、关闭此页面,刷新展示页面
            //用JS写
        }
    
       

    Main代码:

           <input id="btn1" type="button" value="添加用户" />  添加按钮
            <script>
                document.getElementById("btn1").onclick = function () {
                    window.open("zhuce.aspx","_blank");打开一个新的页面
                }; 点击添加按钮出来 添加页面
            </script>
    
            
    
        </form>
    </body>
    </html>

     二、删除

     重新开一个窗体:Delete.aspx,

    在Main前台密码加上一列:  <td>操作</td>

       <td><a href="delete.aspx">删除</a></td>

     asox.cs代码:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    
    public partial class delete : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            //1、获取要删除的主键值,username,做删除的方法
            string Uname = Request["un"].ToString(); 获取请求
    
            //2、删除
            new UsersDA().Delete(Uname);
            //3、调回Main页面
            Response.Redirect("Main.aspx");
        }
    }

     Main界面的前台代码:

               <ItemTemplate>
                   <tr class="tr_Item" style='<%#Eval("red") %>'>
                       <td><%#Eval("UserName") %></td>
                       <td><%#Eval("Password") %></td>
                       <td><%#Eval("NickName") %></td>
                       <td><%#Eval("Ssex") %></td>
                       <td><%#Eval("Birthday2") %></td>
                       <td><%#Eval("Age") %></td>
                       <td><%#Eval("Nation") %></td>
                       <td><a href="delete.aspx?un=<%#Eval("UserName") %>">删除</a></td>  QueryString:传递
                   </tr>
    
               </ItemTemplate>

     内置对象:

    【1、】Response对象:响应请求
    Response.Write("<script>alert('添加成功!')</script>");--显示
    Response.Redirect("Default.aspx");--界面重定项

    【2、】Request对象:获取请求
    Request["key"]来获取传递过来的值

    QueryString:地址栏数据传递 ?key=value&key=value

    注意事项:不需要保密的东西可以传
    不要传过长东西,因为长度有限,过长会造成数据丢失


    三、修改

    重新开一个窗体:xiugai.aspx,

    在Main前台密码  列加:  

       <td><a href="#">修改</a></td>

     修改窗体 aspx前台代码:

     <h1>用户修改</h1>
        用户名:<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
            <br /><br />
            密码:<asp:TextBox ID="TextBox3" runat="server" TextMode="Password"></asp:TextBox><br /><br />
            确认密码:<asp:TextBox ID="TextBox4" runat="server" TextMode="Password"></asp:TextBox><asp:Label ID="Label2" runat="server" Text=""></asp:Label><br /><br />
            昵称:<asp:TextBox ID="TextBox6" runat="server"></asp:TextBox><br /><br />
            性别:<asp:RadioButtonList ID="RadioButtonList1" runat="server" RepeatDirection="Horizontal" RepeatLayout="Flow">
                <asp:ListItem Value="true" Selected="True">男</asp:ListItem>
                <asp:ListItem Value="false">女</asp:ListItem>
            </asp:RadioButtonList><br /><br />
            生日:<asp:DropDownList ID="DropDownList2" runat="server"></asp:DropDownList>年<asp:DropDownList ID="DropDownList3" runat="server"></asp:DropDownList>月<asp:DropDownList ID="DropDownList4" runat="server"></asp:DropDownList>日<br /><br />
            民族:<asp:DropDownList ID="DropDownList1" runat="server" Width="122px"></asp:DropDownList><br /><br />
           &nbsp &nbsp &nbsp &nbsp <asp:Button ID="Button1" runat="server" Text="修 改" /><br />
           
    View Code

    Main 前台代码:

    <td><a href="delete.aspx?un=<%#Eval("UserName") %>">删除</a>
    <a href="xiugai.aspx?un=<%#Eval("UserName") %>">修改</a>
    </td>

     修改的方法:

      
        //修改用
    
        public Users Select(string Uname)
        {
            Users u = new Users();
            cmd.CommandText = "select * from Users where UserName=@username ";
            cmd.Parameters.Clear();
            cmd.Parameters.AddWithValue("@username", Uname);
          
            conn.Open();
            SqlDataReader dr = cmd.ExecuteReader();
            if (dr.HasRows)
            {
                dr.Read();
                
                u.UserName = dr[0].ToString();
                u.PassWord = dr[1].ToString();
                u.NickName = dr[2].ToString();
                u.Sex = Convert.ToBoolean(dr[3]);
                u.Birthday = Convert.ToDateTime(dr[4]);
                u.Nation =dr[5].ToString();
                
     
            }
    
            conn.Close();
            return u;
        }
    
    
        public bool Update(Users u)
        {//修改
            bool isok = false;
            cmd.CommandText = "update Users set PassWord=@b,NickName=@c,Sex=@d,Birthday=@e,Nation=@f where UserName=@a";
            cmd.Parameters.Clear();
            cmd.Parameters.Add("@a", u.UserName);
            cmd.Parameters.Add("@b", u.PassWord);
            cmd.Parameters.Add("@c", u.NickName);
            cmd.Parameters.Add("@d", u.Sex);
            cmd.Parameters.Add("@e", u.Birthday);
            cmd.Parameters.Add("@f", u.Nation);
    
            conn.Open();
            try
            {
                cmd.ExecuteNonQuery();
                isok = true;
            }
            catch { }
            conn.Close();
            return isok;
        }
    View Code
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    
    public partial class xiugai : System.Web.UI.Page
    {
        string pwd = "";//定义一个全局变量
        protected void Page_Load(object sender, EventArgs e)
        {
    
           
            //1、将传过来的主键值接收
            string uname = Request["un"].ToString();
            
    
            //2、通过主键值将对象查出来
            Users u = new UsersDA().Select(uname);
            pwd = u.PassWord;//先记录一下
    
            if (!IsPostBack)//数据绑定
            {
                for (int i = DateTime.Now.Year; i >= 1900; i--)
                {
                    //添加年,创造一个ListItem,让其每循环一次就造一个
                    ListItem li = new ListItem(i.ToString(), i.ToString());
                    DropDownList2.Items.Add(li);
                }
    
                for (int i = 1; i <= 12; i++)
                {
                    //
                    ListItem li = new ListItem(i.ToString(), i.ToString());
                    DropDownList3.Items.Add(li);
                }
    
                for (int i = 1; i <= 31; i++)
                {
                    //
                    ListItem li = new ListItem(i.ToString(), i.ToString());
                    DropDownList4.Items.Add(li);
                }
    
                //取出民族的数据
                DropDownList1.DataSource = new NationDA().Select();
                DropDownList1.DataTextField = "NationName";
                DropDownList1.DataValueField = "NationCode";
                DropDownList1.DataBind();
    
    
                //3、将对象中的数据绑定到每一个控件上去
                Label1.Text = u.UserName;
                TextBox6.Text = u.NickName;
               
                foreach (ListItem li in RadioButtonList1.Items)
                {//性别
                    if (u.Sex)
                    {
                        if (li.Value == "true")
                        {
                            li.Selected = true;
                        }
                    }
                    else
                    {
                        if (li.Value == "false")
                        {
                            li.Selected = true;
                        }
                    }
                }
                DropDownList2.SelectedValue = u.Birthday.Year.ToString();
                DropDownList3.SelectedValue = u.Birthday.Month.ToString();
                DropDownList4.SelectedValue = u.Birthday.Day.ToString();
                DropDownList1.SelectedValue = u.Nation;
    
            }
    
            Button1.Click += Button1_Click;
    
    
        }
    
        void Button1_Click(object sender, EventArgs e)
        {
            //1步、构建一个Users对象
            Users u = new Users();
            u.UserName = Label1.Text;
    
            if (TextBox3.Text == "" && TextBox4.Text == "")
            {//判断密码的
                u.PassWord = pwd;
            }
            else
            {
                u.PassWord = TextBox3.Text;
            }
    
            u.NickName = TextBox6.Text;
            u.Sex = Convert.ToBoolean(RadioButtonList1.SelectedItem.Value);
            string data = DropDownList2.SelectedValue + "-" + DropDownList3.SelectedValue + "-" + DropDownList4.SelectedValue;
            u.Birthday = Convert.ToDateTime(data);
            u.Nation = DropDownList1.SelectedItem.Value;
    
            //2步、将此对象添加到数据库去,先在UserDA里添加方法
            bool ok = new UsersDA().Update(u);
            //3步、提示添加成功
            if (ok)
            {
                Response.Write("<script>alert('修改成功!')</script>");
              4步、Response.Write("<script>this.opener.location.href='Main.aspx';this.close();</script>");
                //Response.Redirect("Main.aspx");//重定项
    
            }
            else
            {
                Response.Write("<script>alert('修改失败!')</script>");
            }
            //4、关闭此页面,刷新展示页面
            //用JS写
        }
    }

      

  • 相关阅读:
    【hdu2825-Wireless Password】AC自动机+DP
    kuangbin专题十二 HDU1029 Ignatius and the Princess IV (水题)
    Codeforces Round #501 (Div. 3) 1015D Walking Between Houses
    Codeforces Round #501 (Div. 3) 1015A Points in Segments (前缀和)
    POJ2503 Babelfish
    POJ2531 Network Saboteur
    POJ3278 Catch That Cow
    POJ2488 A Knight's Journey
    POJ2456 Aggressive cows
    HDU1425 A Chess Game
  • 原文地址:https://www.cnblogs.com/yp11/p/5899986.html
Copyright © 2011-2022 走看看