login.aspx

来自「asp.net技术内幕的书配源码」· ASPX 代码 · 共 105 行

ASPX
105
字号
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>

<script language="C#" runat=server>

void Page_Load(Object sender , EventArgs e) 
{
   string  strLinkPath;

  if (! IsPostBack ) {
    strLinkPath = string .Format( "Register/Register.aspx?ReturnUrl={0}", Request.Params[ "ReturnUrl" ] );
    lnkRegister.NavigateUrl = string .Format( strLinkPath );
  }
}

void Button_Click( object s, EventArgs e ) {
  if ( IsValid ) {
    if ( DBAuthenticate( txtUsername.Text, txtPassword.Text ) > 0 )
    {
      FormsAuthentication.RedirectFromLoginPage( txtUsername.Text, false );
    }
  }
}

int DBAuthenticate( string  strUsername, string  strPassword ) {
	SqlConnection conMyData;
	SqlCommand cmdSelect;
	SqlParameter parmReturnValue;
	int intResult;

	conMyData = new SqlConnection( "Server=localhost;Integrated Security=SSPI;Database=myData" );
	cmdSelect = new SqlCommand( "DBAuthenticate", conMyData );
	cmdSelect.CommandType = CommandType.StoredProcedure;
	parmReturnValue = cmdSelect.Parameters.Add( "RETURN_VALUE", SqlDbType.Int );
	parmReturnValue.Direction = ParameterDirection.ReturnValue;
	cmdSelect.Parameters.Add( "@username", strUsername );
	cmdSelect.Parameters.Add( "@password", strPassword );
	conMyData.Open();
	cmdSelect.ExecuteNonQuery();
	intResult = System.Convert.ToInt32(cmdSelect.Parameters[ "RETURN_VALUE" ].Value);
	conMyData.Close();
	if ( intResult < 0 )
	{
		if ( intResult == -1 )
		{
			lblMessage.Text = "Username ! Registered!";
		} 
		else
		{
			lblMessage.Text = "Invalid Password!";
		}
	}
	return intResult;
}

</Script>

<html>
<head><title>Login.aspx</title></head>
<body>
<form Runat="Server">

<h2>Please Login:</h2>

<asp:Label
  ID="lblMessage"
  ForeColor="Red"
  Font-Bold="True"
  Runat="Server" />
<p>
<b>Username:</b>
<br>
<asp:TextBox
  ID="txtUsername"
  Runat="Server" />
<asp:RequiredFieldValidator
  ControlToValidate="txtUsername"
  Text="Required!"
  Runat="Server" />
<p>
<b>Password:</b>
<br>
<asp:TextBox
  ID="txtPassword"
  Runat="Server" />
<asp:RequiredFieldValidator
  ControlToValidate="txtPassword"
  Text="Required!"
  Runat="Server" />
<p>
<asp:Button
  Text="Login!"
  OnClick="Button_Click"
  Runat="Server" />
<hr>
<asp:HyperLink
  ID="lnkRegister"
  Text="Click Here To Register!"
  Runat="Server" />

</form>
</body>
</html>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?