Я пытаюсь создать страницу входа.Мне удалось сделать страницу регистрации и сохранить электронную почту и зашифрованный пароль, но я изо всех сил пытаюсь сделать страницу входа, чтобы проверить, существует ли пользователь и правильный ли пароль.Я думаю, что я неправильно понял, но надеюсь, что кто-нибудь покажет мне правильный код, поскольку я новичок в этом.
Это хранимая процедура, которую я создал для входа в систему:
CREATE PROCEDURE [dbo].[Logged]
@Email NVARCHAR (50),
@Password NVARCHAR (50)
AS
BEGIN
SELECT *
FROM [dbo].[Register]
WHERE [Email] = @Email
AND [Password] = @Password
END
GO
Вот код login.aspx.cs.
public string CheckPasswordQuery { get; private set; }
public string ToSHA2569(string value)
{
SHA256 sha256 = SHA256.Create();
byte[] hashData = sha256.ComputeHash(Encoding.Default.GetBytes(value));
StringBuilder returnValue = new StringBuilder();
for (int i = 0; i < hashData.Length; i++)
{
returnValue.Append(hashData[i].ToString());
}
return returnValue.ToString();
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
try
{
using (SqlConnection sqlcon = new SqlConnection(connectionString))
{
sqlcon.Open();
SqlCommand cmd = new SqlCommand("Logged", sqlcon);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@Email", txtEmail.Text.Trim());
cmd.Parameters.AddWithValue("@Password", ToSHA2569(txtPassword.Text.Trim()));
cmd.ExecuteNonQuery();
if(CheckPasswordQuery == ToSHA2569(txtPassword.Text))
{
}
}
}
}
Буду благодаренесли кто-то сможет помочь мне с этим
ОБНОВЛЕНИЕ : этот код ближе?Я действительно ценю любую помощь
protected void btnSubmit_Click(object sender, EventArgs e)
{
try
{
using (SqlConnection sqlcon = new SqlConnection(connectionString))
{
string user = txtEmail.Text;
string pass = ToSHA2569(txtPassword.Text);
sqlcon.Open();
SqlCommand cmd = new SqlCommand("select @Email,@Password from [dbo].[Register] where Email=@Email and Password=@Password", sqlcon);
cmd.Parameters.AddWithValue("@Email", txtEmail.Text);
cmd.Parameters.AddWithValue("@Password", ToSHA2569(txtPassword.Text));
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
da.Fill(dt);
if (txtEmail.Text == )
{
sqlcon.Close();
Response.Redirect("default.aspx");
}
else
{
sqlcon.Close();
}
}
}
catch (Exception ex)
{
lblWrong.Text = "Something went wrong please try again later";
}
}