我已经创建了一个登录表单,如果登录成功,我会尝试将用户重定向到管理面板。在 PHP 中,我曾经像在 ASP.Net 中使用 Response.Redirect() 一样重定向它,但是我看到登录表单具有 DestinationPageUrl 属性。如果登录成功,我如何触发这个?我正在使用 MySQL。
这是我的登录事件代码:
protected void loginform_Authenticate(object sender, AuthenticateEventArgs e)
{
string username = loginform.UserName.ToString();
string password = loginform.Password.ToString();
List<string> errors = new List<string>();
Regex rg = new Regex("^[a-z0-9_-]{3,16}$");
if (String.IsNullOrWhiteSpace(username))
{
errors.Add("Username is empty\n");
}
else if (!rg.IsMatch(username))
{
errors.Add("Username can only contain alphanumeric letters, - and _\n");
}
if (String.IsNullOrWhiteSpace(password))
{
errors.Add("Password is empty\n");
}
string queryRows = "SELECT COUNT(*) FROM users WHERE username = ? AND password = ?";
Database db = new Database();
MySqlCommand cmd = new MySqlCommand(queryRows, db.getCon());
cmd.Parameters.AddWithValue("", username);
cmd.Parameters.AddWithValue("", password);
db.Open();
object result = cmd.ExecuteScalar();
db.Close();
int numRows = 0;
if (result != null)
{
numRows = Convert.ToInt32(result);
}
if (numRows > 0)
{
Response.Redirect("~/admin/Admin.aspx");
}
else
{
loginform.FailureText = "<br /><br />User credentials are invalid.";
}
}