Sunday, April 30, 2017

Asp.net login page



.இந்த கட்டுரையில் asp.net-ல் ஒரு எளிய லாக்-இன் மற்றும் லாக்-அவுட் பக்கம் உருவாக்குவது என்று பார்ப்போம்.
லாக்-இன்(log-in) என்பது நாம் இணைய பக்கத்திற்குள் செல்வதற்குமுன் நம்முடைய் user name மற்றும் password முதலியவற்றைக் கேட்டு அவை சரியாக இருந்தால் மட்டுமே உள்ளே செல்ல அனுமதிக்கும். இல்லையென்றால் உள்ளே செல்ல அனுமதிக்காது.
முதலில் sql server-ல் ஒரு டேட்டா பேஸ் உருவாக்க வேண்டும்.அதற்கு sqlserver management studio-வை ஒப்பன் செய்ய வேண்டும்.அதில் முதலில் நம் சர்வருடன் தொடர்பு கொள்ள connect பட்டனை க்ளிக் செய்யவும்.
இடது புற பேனலில் உள்ள Databases என்பதில் வலது க்ளிக் செய்து new database என்பதை தேர்ந்தெடுக்கவும்.. டேட்டா பேஸ் பெயரைக் குறிப்பிடவும்.
உதாரணமாக logindb என்று கொடுக்கவும்.
பின்பு அதை expand செய்து table என்பதில் வலது க்ளிக் செய்து new table என்பதை தேர்ந்தெடுக்கவும்.  இப்போது டேபிளின் விவரங்களைக் கொடுக்கவும்.





Id,username,password என மூன்று உறுப்புகள் கொடுக்கப்பட்டுள்ளது. Id என்பதை வலது க்ளிக் செய்து set primary key என்பதை தேர்ந்தெடுக்கவும். Primary key என்று கொடுக்கப்பட்ட உறுப்புக்கு கட்டாயம் input கொடுக்கப்பட்டிருக்க வேண்டும்,. மேலும் unique ஆக இருக்க வேண்டும்.பிறகு table-ஐ save செய்யவும் . அதன் பெயராக login எனக் கொடுக்கப்பட்டுள்ளது. பின்பு அதை வலது க்ளிக் செய்து Edit 200 rows என்பதை தேர்ந்தெடுக்கவும்.
இப்போது இன்புட் கொடுக்கவும்.

இப்பொழுது விசுவல் ஸ்டுடியோ ஒபன் செய்து new project என்பதை க்ளிக் செய்யவும். பின்பு இடது பக்க பேனலில் visual c# என்ற் தலைப்பிற்க்கு கீழ் web என்பதைக் க்ளிக்ம் செய்து வலது புறம் Asp.net Empty web application என்பதை தேந்தெடுக்கவும். ப்ராஜக்டின் பெயராக loginpage எனக் கொடுக்கவும்.
Solution explorer-ல் ப்ராஜெக்டின் பெயரை வலது க்ளிக் செய்து add new item என்பதை க்ளிக் செய்ய்வும். பிறகு web form என்பதை க்ளிக் செய்து பெயராக login எனக் கொடுக்கவும்..

பின் வருமாறு அதன் design coding இருக்க வேண்டும்
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="login.aspx.cs" Inherits="loginpage.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></title>
    <style type="text/css" >
       
        body
        {
            background-color : Gray  ;
        }
    </style>
</head>
<body >
    <form id="form1" runat="server">
    <div>
    <table style="margin:auto;border:5px solid white;">
   
    <tr><td>
        <asp:Label ID="Label1" runat="server" Text="Enter user Name:"></asp:Label></td>
    <td>
        <asp:TextBox ID="txtUserName" runat="server"></asp:TextBox></td>
    </tr>
    <tr><td>
        <asp:Label ID="Label2" runat="server" Text="Enter password"></asp:Label></td>
    <td>
        <asp:TextBox ID="txtpassword" TextMode ="Password"  runat="server"></asp:TextBox></td>
    </tr>
    <tr><td>
       </td>
    <td>
        <asp:Button ID="btnLogin" runat="server" Text="Login"
            onclick="btnLogin_Click" />
      </td>
    </tr>
    <tr><td>
    </td><td><asp:Label ID="lblErrorMessage" runat="server" ForeColor ="Red" Text="Invalid credentials"></asp:Label></td>
    </tr>
       
    </table>
    </div>
    </form>
</body>
</html>


பார்க்க படம்.-3
பின்பு இந்த பக்கத்திற்கான ஸ்கிரிப்ட் ஆக பின் வருமாறு அமைக்கவும்.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient;


namespace loginpage
{
    public partial class login : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            lblErrorMessage.Visible = false;

        }

        protected void btnLogin_Click(object sender, EventArgs e)
        {
            using (SqlConnection sqlcon = new SqlConnection(@"Data Source=MUTHU1-PC\SQLEXPRESS;Initial Catalog=logindb;Integrated Security=True;"))
            {
                sqlcon.Open();
                string strqry = "select count(1) from login where username=@username and password=@password";
                SqlCommand sqlcmd = new SqlCommand(strqry, sqlcon);
                sqlcmd.Parameters.AddWithValue("@username", txtUserName.Text.Trim());
                sqlcmd.Parameters.AddWithValue("@password", txtpassword.Text.Trim());
                int count =Convert.ToInt32 (sqlcmd.ExecuteScalar());
                if (count == 1)
                {
                    Session["user"] = txtUserName.Text.Trim();

                    Response.Redirect("welcome.aspx");
                }
                else
                {
                    lblErrorMessage.Visible = true;
                }
            }
        }
    }
}
மேலே உள்ள நிரல் வரிகளின் படி சரியான username மற்றும் password கொடுக்கப்பட்டால் welcome.aspx எங்கின்ற பக்கத்திற்கு redirect செய்யப்படுவோம். இல்லையெனில் Error message ஆனது காண்பிக்கப்படும். மேலும் user எங்கின்ற session variable-ல் நமது username சேமிக்கப்ப்டுகின்றது.
Welcome.aspx.
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="welcome.aspx.cs" Inherits="loginpage.welcome" %>

<!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></title>
    <style type="text/css" >
    body
    {
        background-color :Gray ;
    }
    </style>
</head>
<body bgcolor="#0066ff">
    <form id="form1" runat="server">
    <div>
    <table>
    <tr><td></td><td>
        <asp:Label ID="Lblmessage" runat="server" Text=""></asp:Label></td>
    </tr>
    <tr><td></td>
    <td>
        <asp:Button ID="Btnlogout" runat="server" Text="logout"
            onclick="Btnlogout_Click" /></td>
    </tr></table>
    </div>
    </form>
</body>
</html>
மேலே உள்ளவாறு design இருக்க வேண்டும்.

Welcome.aspx.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace loginpage
{
    public partial class welcome : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)

        {
            if(Session["user"]==null)
                Response .Redirect ("login.aspx");
            Lblmessage.Text = "username:" + Session["user"];

        }

        protected void Btnlogout_Click(object sender, EventArgs e)
        {
            Session.Abandon();
            Response.Redirect("login.aspx");

        }
    }
}








மேலே உள்ள நிரல் வரிகளின் படி page login ஆகும் பொழுது பெயர் காண்பிக்கப்படும். Direct ஆகwelcome.aspx பக்கத்திற்குள் சென்றால் அது login பக்கத்திற்கு redirect ஆகும் இப்பொழுது logout பட்டனை க்ளிக் செய்தால் அது Session.Abandon(); எங்கின்ற வரியானது லாக் அவுட் செய்ய உதவுகின்றது. மேலும் login.aspx பக்க்கத்திற்கு redirect ஆகின்றது. இவ்வாறு எளிய முறையில் asp.net-ல் log-in மற்றும் logout செய்யலாம்


           
நான் மதுரையில் 10th,+1,+2 மாணவர்களுக்கான (icse,cbse,samacheer) computer science lessons எடுத்து வருகின்றேன். மேலும் c,cpp,java,dotnet,php,tally,ms-office ஆகியனவும் நடத்தி வருகின்றேன்.
FULL DOTNET SYLLABUS
C#,VISUAL C#,VISUAL BASIC.NET,ASP.NET,ADO.NET, WPF, WCF, SQLSERVER, LINQ,MVC,RAZOR,AJAX,JAVASCRIPT, JQUERY,ANGULAR JS,GRIDVIEW.
தொடர்புக்கு:
91 9629329142


 -முத்துகார்த்திகேயன்,மதுரை

ads Udanz