您的位置:首页 > 编程语言 > ASP

简单的asp.net模拟邮箱系统基础实现(二 (1)具体版块功能的实现及关键代码之注册页面)

2017-03-08 12:35 1101 查看
注册页面:

 

<body style="background:url(image/back.jpg)">

    <form id="form1" runat="server">

        <h1 style="color:red">请输入个人详细信息</h1>

        <asp:Label ID="image" runat="server" Visible="false" ForeColor="Red"></asp:Label>

         

      <table id="infor">

            <caption ></caption>

           

            <tr>

                <td style="text-align:right">用户号:</td>

                <td><asp:TextBox ID="user" runat="server"></asp:TextBox>

                  <asp
4000
:RequiredFieldValidator ID="RFV1" runat="server" ForeColor="Red"

                 ErrorMessage="用户号为必填项目" ControlToValidate="user">          

            </asp:RequiredFieldValidator>

                    <asp:RegularExpressionValidator  ID="RFV2" runat="server" 

                ErrorMessage="用户号不合法" ControlToValidate="user"  ForeColor="Red"

                ValidationExpression="^[a-zA-Z]\w{4,16}[a-zA-Z0-9]$"></asp:RegularExpressionValidator>

                </td>

            </tr>

           <tr>

                <td style="text-align:right">昵称:</td>

                <td><asp:TextBox ID="username" runat="server"></asp:TextBox>

                  <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ForeColor="Red"

                 ErrorMessage="昵称为必填项目" ControlToValidate="username">          

            </asp:RequiredFieldValidator>

                   

                </td>

            </tr>

            <tr><td style="text-align:right">密码:</td><td><asp:TextBox ID="pass" runat="server" TextMode="Password"></asp:TextBox>

                <asp:RequiredFieldValidator ID="RFV3" runat="server" ForeColor="Red"

                 ErrorMessage="密码为必填项目" ControlToValidate="pass">

            </asp:RequiredFieldValidator>

             <asp:RegularExpressionValidator  ID="RegularExpressionValidator1" runat="server"

                ErrorMessage="密码不合法" ControlToValidate="pass" ForeColor="Red"

                ValidationExpression="[^\$\\]{6,16}"></asp:RegularExpressionValidator>

                                                     </td></tr>

            <tr><td style="text-align:right">确认密码:</td><td><asp:TextBox ID="repass" runat="server" TextMode="Password"></asp:TextBox>

                <asp:RequiredFieldValidator ID="RFV4" runat="server" 

                 ErrorMessage="密码为必填项目" ControlToValidate="repass" ForeColor="Red">

            </asp:RequiredFieldValidator>

            <asp:CompareValidator Id="CV1" runat="server"

                ErrorMessage="密码不一致" ControlToValidate="repass" ForeColor="Red"

                ControlToCompare="pass" Type="String" Operator="Equal">

            </asp:CompareValidator></td></tr>

           <tr><td style="text-align:right" >Email</td><td><asp:TextBox ID="email" style="color:gray;font-style:italic" value="如wustzz@163.com"

       onfocus="if (this.value == '如wustzz@163.com') {

                                    this.value =''; this.style.color = 'Black'; this.style.fontStyle = 'normal';

                                    }" 

       onblur="if (this.value == '') { this.value = '如wustzz@163.com'; this.style.fontStyle = 'italic';this.style.color = 'gray' }" runat="server" ></asp:TextBox>

         <asp:RegularExpressionValidator  ID="RegularExpressionValidator3" runat="server"

                ErrorMessage="邮箱不合法" ControlToValidate="email" ForeColor="Red"

                ValidationEx
14c3e
pression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"></asp:RegularExpressionValidator>   

      <asp:CustomValidator ID="CustomValidator1" runat="server" ErrorMessage="*请绑定163邮箱" ForeColor="Red" OnServerValidate="CustomValidator1_ServerValidate" ControlToValidate="email" Display="Dynamic"></asp:CustomValidator>

                  

        </td></tr>

          <tr>

                <td style="text-align:right">邮箱名:</td>

                <td><asp:TextBox ID="mailName" runat="server"></asp:TextBox>

                  <asp:RequiredFieldValidator ID="RequiredFieldValidator8" runat="server" ForeColor="Red"

                 ErrorMessage="邮箱名为必填项目" ControlToValidate="mailName">          

            </asp:RequiredFieldValidator>

                   

                </td>

            </tr>

           <tr>

                <td style="text-align:right">邮箱密码:</td>

                <td><asp:TextBox ID="mailPass" runat="server"></asp:TextBox>

                  <asp:RequiredFieldValidator ID="RequiredFieldValidator9" runat="server" ForeColor="Red"

                 ErrorMessage="邮箱密码为必填项目" ControlToValidate="mailPass">          

            </asp:RequiredFieldValidator>

                   

                </td>

            </tr>

    <tr><td style="text-align:right">性别</td><td><asp:RadioButtonList runat="server" ID="sex"  RepeatDirection="Horizontal">

                                                         <asp:ListItem Selected="True">男</asp:ListItem>

                                                         <asp:ListItem>女</asp:ListItem>

                                                      </asp:RadioButtonList>

                            </td></tr>

        <tr><td style="text-align:right">籍贯</td><td>

            <asp:ScriptManager ID="SM1" runat="server"/>

            <asp:UpdatePanel ID="up1" runat="server">

                <ContentTemplate>

            <asp:DropDownList ID="sheng" runat="server" AutoPostBack="true"  onselectedindexchanged="add"

            >

                <asp:ListItem Selected="true" Value="
">请选择</asp:ListItem>

                <asp:ListItem Value="湖南省">湖南省</asp:ListItem>

                <asp:ListItem Value="广东省">广东省</asp:ListItem>

                <asp:ListItem Value="湖北省">湖北省</asp:ListItem>

                <asp:ListItem Value="江苏省">江苏省</asp:ListItem>

            </asp:DropDownList>省

            <asp:DropDownList ID="shi" runat="server">

                <asp:ListItem Selected="true" Value="
">请选择</asp:ListItem>

            </asp:DropDownList>市

               </ContentTemplate>

                     </asp:UpdatePanel>

        </td></tr>

        <tr><td style="text-align:right">手机号</td><td><asp:TextBox ID="num" runat="server"  placeholder="11位,联通号"></asp:TextBox>

        <asp:RegularExpressionValidator  ID="RegularExpressionValidator2" runat="server"

                ErrorMessage="必须为11个号码" ControlToValidate="num" ForeColor="Red"

                ValidationExpression="\d{11}"></asp:RegularExpressionValidator>

        </td></tr>

        <tr><td style="text-align:right">个人照片</td><td><asp:FileUpload ID="photo" runat="server" BackColor="#FFFF99" /></td></tr>

        <tr><td  style="text-align:right;vertical-align:top">出生年月</td><td>

       

            <asp:UpdatePanel ID="UpdatePanel1" runat="server">

                <ContentTemplate><asp:Textbox ID="showData" runat="server" AutoPostBack="true"></asp:Textbox><asp:calendar ID="data" runat="server" Visible="true" OnSelectionChanged="data_SelectionChanged" BorderColor="#FF6600" ForeColor="Black"></asp:calendar><asp:Button ID="visable" Text="确定" runat="server" OnClick="visable_Click" BackColor="#66FFFF" BorderStyle="None"/></ContentTemplate>

                     </asp:UpdatePanel></td></tr>

        <tr><td style="text-align:right">备注信息</td><td><asp:TextBox ID="info" runat="server" TextMode="MultiLine" Rows="5" Wrap="true"></asp:TextBox></td></tr>     

           <tr><td><asp:Button ID="bt1" runat="server" Text="提交" OnClick="bt1_Click" BackColor="#66CCFF" BorderStyle="None"/> </td><td><asp:Button ID="bt2" runat="server" Text="重填" BackColor="#66CCFF" BorderStyle="None"/></td></tr>

        </table>

        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$
ConnectionStrings:ConnectionString %>" InsertCommand="INSERT INTO userInfor(USERID, USERNAME,
PASS, SEX, CITY, PRIVICE, IMAGE, PHONE, BIRTH, EMAIL, MAILPASS, MAILNAME) VALUES (@userid, @username, @pass, @sex, @city, @privice, @image, @phone, @birth, @email, @mailpass, @mailname)" SelectCommand="SELECT
[USERID], [USERNAME], [PASS], [SEX], [CITY], [PRIVICE], [IMAGE], [PHONE], [BIRTH] FROM [userInfor]">

            <InsertParameters>

                <asp:ControlParameter ControlID="user" Name="userid" PropertyName="Text" />

                <asp:ControlParameter ControlID="username" Name="username" PropertyName="Text" />

                <asp:ControlParameter ControlID="pass" Name="pass" PropertyName="Text" />

                <asp:ControlParameter ControlID="sex" Name="sex" PropertyName="SelectedValue" />

                <asp:ControlParameter ControlID="shi" Name="city" PropertyName="SelectedValue" />

                <asp:ControlParameter ControlID="sheng" Name="privice" PropertyName="SelectedValue" />

                <asp:ControlParameter ControlID="image" Name="image" PropertyName="Text" />

                <asp:ControlParameter ControlID="num" Name="phone" PropertyName="Text" />

                <asp:ControlParameter ControlID="data" Name="birth" PropertyName="SelectedDate" />

                <asp:ControlParameter ControlID="email" Name="email" PropertyName="Text" />

                <asp:ControlParameter ControlID="mailPass" Name="mailpass" PropertyName="Text" />

                <asp:ControlParameter ControlID="mailName" Name="mailname" PropertyName="Text" />

            </InsertParameters>

        </asp:SqlDataSource>

    </form>

    </body>

C#

 

namespace email

{

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

    {

        protected void Page_Load(object sender,EventArgs e)

        {

            UnobtrusiveValidationMode = UnobtrusiveValidationMode.None;

            if (IsPostBack)

            {

 

            }          

 

        }

//省市级联部分

        protected void add(object sender,EventArgs e)

        {

            int index = sheng.SelectedIndex;

            string[][] citys =
new string[4][]{
new string[]{
"湖南省", "长沙市",
"石门市", "武冈市" },

                                          new string[]{"广东省",
"广州市",
"佛山市", "珠海市" },

                                          new string[]{"湖北省",
"武汉市",
"黄冈市", "荆州市" },

                                          new string[]{"江苏省",
"南京市",
"苏州市", "无锡市" } };

            if (index == 0)
return;

 

            shi.Items.Clear();

            shi.Items.Add("请选择");

            for (int i = 1; i < citys[index - 1].Length; i++)

                shi.Items.Add(citys[index - 1][i]);

        }

 

 

 

 

//判断是否是163邮箱

        protected int Is163(String s)

        {

            int i;

            for ( i = 0; i < s.Length; i++)

            {

                if (s[i] ==
'@') {

                    break;

                }

            }

            if (s.Substring(i+1, 3) =="163")

            {

                i = 1;

            }

            else {

                i = 0;

            }

            return i;

        }

//注册完成的点击事件包括文件上传,用户联系人表的创建,因为用户名id是主键,如果插入数据库成功则说明用户名唯一,否则注册失败

        protected void bt1_Click(object sender,EventArgs e)

        {

            if (Page.IsValid)

            {

                string saveDir =
@"\UserPhotos\";

                string appPath = Request.PhysicalApplicationPath;

                if (photo.FileName !=
"")

                {

                    if (photo.HasFile)

                    {

                        string savePath = appPath + saveDir + photo.FileName;

                        photo.SaveAs(savePath);

                    }

 

                }

                String str =
@"Data Source = (LocalDB)\MSSQLLocalDB; AttachDbFilename = C:\Users\asus\Documents\Visual Studio 2015\Projects\email\email\App_Data\DB.mdf; Integrated Security = True";

                SqlConnection con =new SqlConnection(str);

                try

                {

                    con.Open();

                    SqlCommand cmd1 =new SqlCommand("create table " + user.Text +"
(USERID nvarchar(50) primary key, USERNAME nvarchar(50),)", con);

                    cmd1.ExecuteNonQuery();

                }

                catch

                {

                }

                finally

                {

                    con.Close();

                }              

                try

                {

                    image.Text = photo.FileName;

                    SqlDataSource1.Insert();

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

                }

                catch

                {

                    image.Text = "用户名已存在!";

                    image.Visible = true;

                }

            }

        }

 

        protected void data_SelectionChanged(object sender,EventArgs e)

        {

            showData.Text = data.SelectedDate.ToLongDateString();

 

        }

 

        protected void visable_Click(object sender,EventArgs e)

        {

            data.Visible = false;

            visable.Visible = false;

        }

 

        protected void CustomValidator1_ServerValidate(object source,ServerValidateEventArgs args)

        {

            if (Is163(email.Text) != 1)

            {

                args.IsValid = false;

                email.Text = "";

            }

            else {

                args.IsValid = true;

            }

        }

    }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐