I denna artikel kommer jag att gå igenom hur man kan skapa en inloggning i ASP.NET (C#). Jag rekomenderar starkt att du går igenom min tidigare artikel om hur man installerar VWD med MySQL om du ska jobba med MySQL och inte har installerat allt än. Har du gjort det så är det bra.
Kom ihåg att i denna artikel kallar jag connection-strängen som är sparad i Web.config för connectionstring.
Nu ska vi skapa självaste formuläret som ska hjälpa oss med inloggningen:
<asp:Label ID="loginLabelOff" runat="server" Visible="true">
<asp:Label ID="formLoginUserLabel" runat="server" Text="Användarnamn:" /><br />
<asp:TextBox ID="formLoginUser" runat="server" TextMode="SingleLine" /><br />
<asp:Label ID="formLoginPassLabel" runat="server" Text="Lösenord:" /><br />
<asp:TextBox ID="formLoginPass" runat="server" TextMode="Password" /><br />
<asp:Button ID="formLoginButton" runat="server" Text="Logga in" /><br /><br />
Märk även att jag skapade några labels som ska beskriva för användaren att det är ett användarnamn och ett lösenord som ska skrivas i fälten. Märk väl att vi har lagt allt i en label som vi kallar för loginLabelOff, det är den informationen som man kommer att se om man är utloggad, den har vi satt till synlig (visible="true"). Stäng INTE den labeln än, vi ska fortsätta koda nedan.
Det vi ska göra nu är att vi ska slänga in två kontroller som ser till att fälten innehåller värden innan man kan gå vidare med inloggningen. Till det kommer vi att använda RequiredFieldValidator som helt enkelt ser till att ett värde finns i fälten.
<asp:RequiredFieldValidator ID="loginFormUserValidator" runat="server" ErrorMessage="Ange ett användarnamn" ControlToValidate="formLoginUser" SetFocusOnError="true" /><br />
<asp:RequiredFieldValidator ID="loginFormPassValidator" runat="server" ErrorMessage="Ange ett lösenord" ControlToValidate="formLoginPass" SetFocusOnError="true" />
</asp:Label>
Så, vad hände där? Jo jag ska förklara allt för dig:
Kom ihåg att jag nu stängde labeln loginFormOff. Nu är det dags att skapa den labeln som ska synas när man är online istället:
<asp:Label ID="loginLabelOff" runat="server" Visible="false">Du är inloggad</asp:Label>
Den labeln gör vi osynlig (visible="false").
Nu ska vi skapa koden som ska sköta inloggningen, men innan det måste vi koppla knappen till metoden som vi ska skapa. Modifiera knappkoden ovan till följande:
<asp:Button ID="formLoginButton" runat="server" Text="Logga in" OnClick="formLoginButton_OnClick" />
Det vi gjorde är att när man klickar på knappen så ska metoden/funktionen formLoginButton_OnClick() aktiveras. Det är den funktionen som vi ska jobba med här.
dReader.Close();
connection.Close();
}
Ojojoj, nu vart det mycket kod här. Men lugn, det mesta är logiskt, det är bara i början som man måste hänga med, resten är lungt ;)
cmd.Parameters.Add("?Username", MySqlDbType.VarChar, 15).Value = formLoginUser.Text;dReader = cmd.ExecuteReader();
Detta är en mycket enkel inloggningsfunktion, det ser mycket ut, men när du har lärt dig den så kommer du att gilla den och inse att det mesta är ganska logiskt.
Kom ihåg att du måste själv hålla koll på ifall användaren är online eller inte, det kan du göra på många olika sätt, bl.a. genom sessions. Jag ska försöka skriva en artikel om det senare.
Lycka till!
Skapades: 2007-08-27 22:02:07
Skribent: Shadi
Lästs 1119 gånger
Betyg: 1 (artikeln har endast 1 röster, det krävs minst 5 för ett betyg)
Ingen har kommenterat denna artikel än.