Create User Registration Form In AspNet

Creating user registration form in asp.net
Creating user registration form example in asp.net

In this post i am explaining how to create user registration or signup form in asp.net with sql server database using C# and VB.NET.

For this first of all we need to create a table in sql server database to store user registration data.

I have created a table named Users for this example with columns shown in image below.







Place textboxes on the form for entering name,username,password,address,email etc.

Set Textmode property of password textbox to password to display * character instead of text entered.

Associate RequiredFieldValidators with textboxes as shown in HTML source.

Place one Label and Button to save the data.


HTML SOURCE OF PAGE
   1:  <table>
   2:  <tr>
   3:  <td>First Name:</td>
   4:  <td><asp:TextBox ID="txtFirstName" runat="server">
   5:     </asp:TextBox>
   6:  </td>
   7:  <td><asp:RequiredFieldValidator ID="rfvFirstName" 
   8:              runat="server" 
   9:              ControlToValidate="txtFirstName"
  10:              ErrorMessage="First Name can't be left blank" 
  11:              SetFocusOnError="True">*
  12:       </asp:RequiredFieldValidator>
  13:  </td>
  14:  </tr>
  15:  <tr>
  16:  <td>Last Name:</td>
  17:  <td><asp:TextBox ID="txtLastName" runat="server">
  18:      </asp:TextBox></td>
  19:  <td><asp:RequiredFieldValidator 
  20:           ID="RequiredFieldValidator1" runat="server" 
  21:           ControlToValidate="txtLastName"
  22:           ErrorMessage="Last Name can't be left blank" 
  23:           SetFocusOnError="True">*
  24:      </asp:RequiredFieldValidator>
  25:  </td></tr>
  26:   
  27:  <tr><td>UserName:</td>
  28:  <td><asp:TextBox ID="txtUserName" runat="server">
  29:      </asp:TextBox>
  30:  </td>
  31:  <td><asp:RequiredFieldValidator 
  32:           ID="rfvUserName" 
  33:           runat="server" 
  34:           ControlToValidate="txtUserName"
  35:           ErrorMessage="UserName can't be left blank" 
  36:           SetFocusOnError="True">*
  37:      </asp:RequiredFieldValidator>
  38:  </td></tr>
  39:   
  40:  <tr><td>Password:</td>
  41:  <td><asp:TextBox ID="txtPwd" runat="server"
  42:                   TextMode="Password">
  43:      </asp:TextBox>
  44:  </td>
  45:  <td><asp:RequiredFieldValidator ID="rfvPwd" 
  46:           runat="server" ControlToValidate="txtPwd"
  47:           ErrorMessage="Password can't be left blank" 
  48:           SetFocusOnError="True">*
  49:     </asp:RequiredFieldValidator>
  50:  </td></tr>
  51:   
  52:  <tr><td>Confirm Password:</td>
  53:  <td><asp:TextBox ID="txtRePwd" runat="server"
  54:                   TextMode="Password">
  55:      </asp:TextBox>
  56:  </td>
  57:  <td><asp:CompareValidator ID="CompareValidator1" 
  58:           runat="server" 
  59:           ControlToCompare="txtRePwd" 
  60:           ControlToValidate="txtPwd" 
  61:           Operator="Equal" 
  62:           ErrorMessage="Password and confirm password do not match" 
  63:           SetFocusOnError="True">
  64:      </asp:CompareValidator>
  65:  </td></tr>
  66:   
  67:  <tr><td>Gender:</td>
  68:  <td><asp:RadioButtonList ID="rdoGender" 
  69:                           runat="server">
  70:           <asp:ListItem>Male</asp:ListItem>
  71:           <asp:ListItem>Female</asp:ListItem>
  72:      </asp:RadioButtonList>
  73:  </td>
  74:  <td><asp:RequiredFieldValidator 
  75:           ID="RequiredFieldValidator2" 
  76:           runat="server" 
  77:           ControlToValidate="rdoGender"
  78:           ErrorMessage="Gender can't be left blank" 
  79:           SetFocusOnError="True">*
  80:       </asp:RequiredFieldValidator>
  81:  </td></tr>
  82:   
  83:  <tr><td>Address:</td>
  84:  <td><asp:TextBox ID="txtAdress" runat="server" 
  85:                   TextMode="MultiLine">
  86:      </asp:TextBox>
  87:  </td>
  88:  <td><asp:RequiredFieldValidator ID="rfvAddress" 
  89:           runat="server" 
  90:           ControlToValidate="txtAdress"
  91:           ErrorMessage="Address can't be left blank" 
  92:           SetFocusOnError="True">*
  93:      </asp:RequiredFieldValidator>
  94:  </td></tr>
  95:                          
  96:  <tr><td>Email ID:</td>
  97:  <td><asp:TextBox ID="txtEmailID" runat="server">
  98:      </asp:TextBox>
  99:  </td>
 100:  <td><asp:RequiredFieldValidator 
 101:           ID="RequiredFieldValidator3" 
 102:           runat="server" 
 103:           ControlToValidate="txtEmailID"
 104:           ErrorMessage="Email can't be left blank" 
 105:           SetFocusOnError="True">*
 106:      </asp:RequiredFieldValidator>
 107:  </td></tr>
 108:   
 109:  <tr><td><asp:Label ID="lblMsg" runat="server">
 110:          </asp:Label>
 111:      </td>
 112:  <td><asp:ValidationSummary ID="ValidationSummary1" 
 113:           runat="server" ShowMessageBox="True" 
 114:           ShowSummary="False"/>
 115:  </td></tr>
 116:   
 117:  <tr><td><asp:Button ID="btnSave" runat="server" 
 118:                      Text="Sign Up" 
 119:                      onclick="btnSave_Click"/>
 120:  </td></tr>
 121:  </table>

Write below mentioned code in click event of signup button.

C# CODE
protected void btnSave_Click(object sender, EventArgs e)
    {
        //Create ConnectionString and Inser Statement
        string connectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
        string insertSql = "INSERT INTO Users (FirstName,LastName,UserName,Password,Email,Address,Gender)" 
        + " values (@FirstName,@LastName,@UserName,@Password,@Email,@Address,@Gender)";
        //Create SQL connection
        SqlConnection con = new SqlConnection(connectionString);
        
        //Create SQL Command And Sql Parameters

        SqlCommand cmd = new SqlCommand();
        cmd.Connection = con;
        cmd.CommandType = CommandType.Text;
        cmd.CommandText = insertSql;

        SqlParameter firstName = new SqlParameter("@FirstName", SqlDbType.VarChar, 50);
        firstName.Value = txtFirstName.Text.ToString();
        cmd.Parameters.Add(firstName);

        SqlParameter lastName = new SqlParameter("@LastName", SqlDbType.VarChar, 50);
        lastName.Value = txtLastName.Text.ToString();
        cmd.Parameters.Add(lastName);

        SqlParameter userName = new SqlParameter("@UserName", SqlDbType.VarChar, 50);
        userName.Value = txtUserName.Text.ToString();
        cmd.Parameters.Add(userName);

        SqlParameter pwd = new SqlParameter("@Password", SqlDbType.VarChar, 50);
        pwd.Value = txtPwd.Text.ToString();
        cmd.Parameters.Add(pwd);

        SqlParameter email = new SqlParameter("@Email", SqlDbType.VarChar, 50);
        email.Value = txtEmailID.Text.ToString();
        cmd.Parameters.Add(email);

        SqlParameter address = new SqlParameter("@Address", SqlDbType.VarChar, 50);
        address.Value = txtAdress.Text.ToString();
        cmd.Parameters.Add(address);

        SqlParameter gender = new SqlParameter("@Gender", SqlDbType.VarChar, 10);
        gender.Value = rdoGender.SelectedItem.ToString();
        cmd.Parameters.Add(gender);

        
        try
        {
            con.Open();
            cmd.ExecuteNonQuery();
            lblMsg.Text = "User Registration successful";
        }
        catch (SqlException ex)
        {
            string errorMessage = "Error in registring user";
            errorMessage += ex.Message;
            throw new Exception(errorMessage);

        }
        finally
        {
            con.Close();
        }
    }

VB.NET CODE
Protected Sub btnSave_Click(sender As Object, e As EventArgs)
 'Create ConnectionString and Inser Statement
 Dim connectionString As String = ConfigurationManager.ConnectionStrings("ConnectionString").ConnectionString
 Dim insertSql As String = "INSERT INTO Users (FirstName,LastName,UserName,Password,Email,Address,Gender)" & " values (@FirstName,@LastName,@UserName,@Password,@Email,@Address,@Gender)"
 'Create SQL connection
 Dim con As New SqlConnection(connectionString)

 'Create SQL Command And Sql Parameters

 Dim cmd As New SqlCommand()
 cmd.Connection = con
 cmd.CommandType = CommandType.Text
 cmd.CommandText = insertSql

 Dim firstName As New SqlParameter("@FirstName", SqlDbType.VarChar, 50)
 firstName.Value = txtFirstName.Text.ToString()
 cmd.Parameters.Add(firstName)

 Dim lastName As New SqlParameter("@LastName", SqlDbType.VarChar, 50)
 lastName.Value = txtLastName.Text.ToString()
 cmd.Parameters.Add(lastName)

 Dim userName As New SqlParameter("@UserName", SqlDbType.VarChar, 50)
 userName.Value = txtUserName.Text.ToString()
 cmd.Parameters.Add(userName)

 Dim pwd As New SqlParameter("@Password", SqlDbType.VarChar, 50)
 pwd.Value = txtPwd.Text.ToString()
 cmd.Parameters.Add(pwd)

 Dim email As New SqlParameter("@Email", SqlDbType.VarChar, 50)
 email.Value = txtEmailID.Text.ToString()
 cmd.Parameters.Add(email)

 Dim address As New SqlParameter("@Address", SqlDbType.VarChar, 50)
 address.Value = txtAdress.Text.ToString()
 cmd.Parameters.Add(address)

 Dim gender As New SqlParameter("@Gender", SqlDbType.VarChar, 10)
 gender.Value = rdoGender.SelectedItem.ToString()
 cmd.Parameters.Add(gender)


 Try
  con.Open()
  cmd.ExecuteNonQuery()
  lblMsg.Text = "User Registration successful"
 Catch ex As SqlException
  Dim errorMessage As String = "Error in registring user"
  errorMessage += ex.Message

  Throw New Exception(errorMessage)
 Finally
  con.Close()
 End Try
End Sub

Build and run the code.


Download Sample Code



If you like this post than join us or share

0 comments: