.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
 
Sign In
Register
 
Win Surprise Gifts!!!
Congratulations!!!


Top 5 Contributors of the Month
david stephan

Home >> Articles >> ASP.NET >> Post New Resource Bookmark and Share   

 Subscribe to Articles

Registration and login according to role in asp.net

Posted By:satyapriyanayak       Posted Date: November 21, 2013    Points: 200    Category: ASP.NET    URL: http://www.dotnetspark.com  

In this article we will know how to register a user having different roles. Here we have three different kinds of role such as Admin, Free User and Paid User .After successful registration we can also login to the system. While login we can redirect to different webpage's according to their corresponding roles.
 

Register.aspx

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Register</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <table align="center">
            <tr>
                <td colspan="2">
                    <h3>
                         Registration using Role</h3>
                </td>
            </tr>
            <tr>
                <td>
                    
                 <asp:Label ID="Label1" runat="server" Text="UserName:" Font-Bold="True" Width="100px" BackColor="#FFFF66" ForeColor="#FF3300"></asp:Label>
                    </td>
                <td>
                    <asp:TextBox ID="txt_UserName" runat="server" Width="150px"></asp:TextBox>
                </td>
                <td><asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ErrorMessage="Enter UserName" ControlToValidate="txt_UserName"></asp:RequiredFieldValidator> </td>
            </tr>
            <tr>
                <td>
                   
                 <asp:Label ID="Label2" runat="server" Text="Password:" Font-Bold="True" Width="100px" BackColor="#FFFF66" ForeColor="#FF3300"></asp:Label>
                 </td>
                <td>
                    <asp:TextBox ID="txt_Password"  TextMode="Password" runat="server"
                        Width="150px"></asp:TextBox>
                </td>
                <td><asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" ErrorMessage="Enter Password" ControlToValidate="txt_Password"></asp:RequiredFieldValidator> </td>
            </tr>
            <tr>
                <td>
                <asp:Label ID="Label3" runat="server" Text="Role:" Font-Bold="True" Width="100px"  Height="100px" BackColor="#FFFF66" ForeColor="#FF3300"></asp:Label>
                    </td>
                <td>
                    <asp:RadioButtonList ID="rbtRole" runat="server" RepeatDirection="Vertical">
                        <asp:ListItem>Admin</asp:ListItem>
                        <asp:ListItem>FreeUser</asp:ListItem>
                         <asp:ListItem>PaidUser</asp:ListItem>
                    </asp:RadioButtonList>
                </td>
                <td><asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ErrorMessage="Select role" ControlToValidate="rbtRole"></asp:RequiredFieldValidator> </td>
            </tr>
            <tr>
            <td></td>
                <td>
                    <asp:Button ID="btn_register" runat="server" BackColor="#CCFF99" Text="Register"
                        onclick="btn_register_Click" />
 
                </td>
                <td><asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="~/Login.aspx"
                        ForeColor="#663300">Click here to Login</asp:HyperLink></td>
                
            </tr>
            <tr>
                <td align="center"  colspan="2">
                    <asp:Label ID="lblmsg" runat="server"></asp:Label>
                </td>
            </tr>
        </table>
        
    </div>
    </form>
</body>
</html>

Register.aspx.cs

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
namespace Login_role
{
    public partial class Register : System.Web.UI.Page
    {

        string strConnString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
        SqlCommand com;

        protected void btn_register_Click(object sender, EventArgs e)
        {
            SqlConnection con = new SqlConnection(strConnString);
            com = new SqlCommand();
            com.Connection = con;
            com.CommandType = CommandType.Text;
            com.CommandText = "Insert into Login values(@UserName,@Password,@Role)";
            com.Parameters.Clear();
            com.Parameters.AddWithValue("@UserName", txt_UserName.Text);
            com.Parameters.AddWithValue("@Password", txt_Password.Text);
            com.Parameters.AddWithValue("@Role", rbtRole.SelectedValue);
            if (con.State == ConnectionState.Closed)
            con.Open();
            com.ExecuteNonQuery();
            con.Close();
            lblmsg.Text = "Successfully Registered!!!";
            clear();
        }
        private void clear()
        {
            txt_UserName.Text = "";
            rbtRole.ClearSelection();
        }
    }
}

Login.aspx

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Login</title>
    <script type="text/javascript" language="javascript">
    function Validate()
    {
    var UName=document.getElementById('TextBox_user_name');
    var Password=document.getElementById('TextBox_password');
    if((UName.value=='') || (Password.value==''))
    {
     alert('UserName or Password should not be blank');
     return false;
    }
    else
    {
      return true;
    }
    }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <asp:Label ID="lb1" runat="server" Font-Bold="True" ForeColor="#FF3300"></asp:Label><br />
     <asp:Label ID="Label1" runat="server" Text="Name" Font-Bold="True" Width="100px" BackColor="#FFFF66" ForeColor="#FF3300"></asp:Label>
            
        <asp:TextBox ID="TextBox_user_name" runat="server" ForeColor="#993300" Width="100px"></asp:TextBox><br />
        <asp:Label ID="Label2" runat="server" Text="Password" Font-Bold="True" Width="100px" BackColor="#FFFF66" ForeColor="#FF3300"></asp:Label>
            
        <asp:TextBox ID="TextBox_password" runat="server" ForeColor="#CC6600" TextMode="Password" Width="100px"></asp:TextBox><br />
                
        <asp:Button ID="btn_login" runat="server" Text="Login" Font-Bold="True"
            BackColor="#CCFF99"   OnClientClick="Validate()" onclick="btn_login_Click"
            /><br />
    </div>
    </form>
</body>
</html>

Login.aspx.cs

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
namespace Login_role
{
    public partial class Login : System.Web.UI.Page
    {
        string strConnString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
        string str, UserName, Password;
        SqlCommand com;
        SqlDataAdapter sqlda;
        DataTable dt;
        int RowCount;

        protected void btn_login_Click(object sender, EventArgs e)
        {
            SqlConnection con = new SqlConnection(strConnString);
            con.Open();
            str = "Select * from Login";
            com = new SqlCommand(str);
            sqlda = new SqlDataAdapter(com.CommandText, con);
            dt = new DataTable();
            sqlda.Fill(dt);
            RowCount = dt.Rows.Count;
            for (int i = 0; i < RowCount; i++)
            {
                UserName = dt.Rows[i]["UserName"].ToString();
                Password = dt.Rows[i]["Password"].ToString();
                if (UserName == TextBox_user_name.Text && Password == TextBox_password.Text)
                {
                    Session["UserName"] = UserName;
                    if (dt.Rows[i]["Role"].ToString() == "Admin")
                        Response.Redirect("~/Admin/Admin.aspx");
                    else if (dt.Rows[i]["Role"].ToString() == "FreeUser")
                        Response.Redirect("~/FreeUser/FreeUser.aspx");
                    else if (dt.Rows[i]["Role"].ToString() == "PaidUser")
                        Response.Redirect("~/PaidUser/PaidUser.aspx");
                }
                else
                {
                    lb1.Text = "Invalid User Name or Password! Please try again!";
                }
            }
        
        }
    }
}

Admin.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Admin.aspx.cs" Inherits="Login_role.clerk" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Admin</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
     <h1><font color="red">Admin Page</font></h1>
    <asp:Label ID="lb1" runat="server" Text="Label"></asp:Label>
    </div>
    </form>
</body>
</html>

Admin.aspx.cs

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

namespace Login_role
{
    public partial class clerk : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            lb1.Text = "<b><font color=Brown>" + "WELLCOME ADMIN:: " + "</font>" + "<b><font color=red>" + Session["UserName"] + "</font>";
        }
    }
}

FreeUser.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="FreeUser.aspx.cs" Inherits="Login_role.doctor" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>FreeUser</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <h1><font color="green">FreeUser Page</font></h1>
    <asp:Label ID="lb1" runat="server" Text="Label"></asp:Label>
    </div>
    </form>
</body>
</html>

FreeUser.aspx.cs

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

namespace Login_role
{
    public partial class doctor : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            lb1.Text = "<b><font color=Brown>" + "WELLCOME FREE USER:: " + "</font>" + "<b><font color=red>" + Session["UserName"] + "</font>";
        }
    }
}

PaidUser.aspx

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>PaidUser</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <h1><font color="olive">PaidUser Page</font></h1>
    <asp:Label ID="lb1" runat="server" Text="Label"></asp:Label>
    </div>
    </form>
</body>
</html>

PaidUser.aspx.cs

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

namespace Login_role
{
    public partial class PaidUser : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            lb1.Text = "<b><font color=Brown>" + "WELLCOME PAID USER:: " + "</font>" + "<b><font color=red>" + Session["UserName"] + "</font>";
        }
    }
}


 Subscribe to Articles

     

Further Readings:

Responses

No response found. Be the first to respond this post

Post Comment

You must Sign In To post reply
Find More Articles on C#, ASP.Net, Vb.Net, SQL Server and more Here

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend