『 漂失在蓝天下的云 』

当孤寂在不可飞跃的天空,人应该在磨灭的环境下找到适合自己的那一种可以编译的云

导航

Forms验证的实现

Posted on 2006-03-01 23:12  漂失在蓝天下的云  阅读(351)  评论(0)    收藏  举报

1,设置web.config

 1<system.web>
 2.
 3 <authentication mode="Forms"> 
 4     <forms loginUrl="add.aspx" name=".ASPXFORMSAUTH"/>
 5 </authentication> 
 6 <authorization>
 7      <deny users="?"/> 
 8 </authorization>
 9..
10</system.web>
11


2,在login.aspx页面的验证中加入的代码

 1<%@ Page language="c#" Codebehind="add.aspx.cs" AutoEventWireup="false" Inherits="E_commerce.add" %>
 2<%@ Import Namespace="System.Web.Security" %>
 3<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
 4<HTML>
 5 <HEAD>
 6  <title>add</title>
 7  <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
 8  <meta name="CODE_LANGUAGE" Content="C#">
 9  <meta name="vs_defaultClientScript" content="JavaScript">
10  <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
11  <script language="C#" runat="server">
12     void Logon_Click(Object sender, EventArgs e) 
13        {
14           if ((UserEmail.Value == "123@123.com"&& 
15                (UserPass.Value == "123")) 
16            {
17               FormsAuthentication.RedirectFromLoginPage
18                   (UserEmail.Value, Persist.Checked);
19            }

20            else 
21            {
22                Msg.Text = "Invalid Credentials: Please try again.";
23            }

24        }

25  
</script>
26 </HEAD>
27 <body MS_POSITIONING="GridLayout">
28  <form id="Form1" method="post" runat="server">
29   <h3><font face="Verdana">Logon Page</font></h3>
30   <table>
31    <tr>
32     <td>Email:</td>
33     <td><input id="UserEmail" type="text" runat="server" NAME="UserEmail"></td>
34     <td><ASP:RequiredFieldValidator ControlToValidate="UserEmail" Display="Static" ErrorMessage="Cannot be empty." runat="server"
35       ID="Requiredfieldvalidator1" />
36     </td>
37     <td><asp:RegularExpressionValidator id="RegexValidator" ControlToValidate="UserEmail" ValidationExpression="^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$"
38       EnableClientScript="false" Display="Static" ErrorMessage="Invalid format for e-mail address." runat="server" />
39     </td>
40    </tr>
41    <tr>
42     <td>Password:</td>
43     <td><input id="UserPass" type="password" runat="server" NAME="UserPass"></td>
44     <td><ASP:RequiredFieldValidator ControlToValidate="UserPass" Display="Static" ErrorMessage="Cannot be empty." runat="server"
45       ID="Requiredfieldvalidator2" />
46     </td>
47    </tr>
48    <tr>
49     <td>Persistent Cookie:</td>
50     <td><ASP:CheckBox id="Persist" runat="server" autopostback="true" />
51     </td>
52     <td></td>
53    </tr>
54   </table>
55   <input type="submit" OnServerClick="Logon_Click" Value="Logon" runat="server" ID="Submit1"
56    NAME="Submit1">
57   <p><asp:Label id="Msg" ForeColor="red" Font-Name="Verdana" Font-Size="10" runat="server" /></p>
58  </form>
59 </body>
60</HTML>



3,在登陆成功页面 Default.aspx

 1<%@ Page language="c#" Codebehind="Default.aspx.cs" AutoEventWireup="false" Inherits="E_commerce._Default" %>
 2<HTML>
 3 <HEAD>
 4  <title>Forms Authentication</title>
 5  <script runat="server">
 6    private void Page_Load(Object Src, EventArgs e ) 
 7    {
 8        Welcome.InnerHtml = "Hello, " + Context.User.Identity.Name;
 9    }

10    private void Signout_Click(Object sender, EventArgs e) 
11    {
12        FormsAuthentication.SignOut();
13        Response.Redirect("logon.aspx");
14    }

15  
</script>
16 </HEAD>
17 <body>
18  <h3><font face="Verdana">Using Forms Authentication</font></h3>
19  <span id="Welcome" runat="server" />
20  <form runat="server" ID="Form1">
21   <input type="submit" OnServerClick="Signout_Click" Value="Signout" runat="server" ID="Submit1"
22    NAME="Submit1"><p>
23  </form>
24  </P>
25 </body>
26</HTML>
27