我在asp.net中爲登錄頁面編寫了一些服務器端驗證。變量在當前上下文中不存在C#
現在,我來自「從零開始寫」PHP的角度來看,我正在學習和努力與這些我不知道的一些asp.net概念。
我想設置一個用戶名和密碼變量爲「有效」,如果輸入是有效的,我想用這些變量進行登錄。
我也不確定這是否是正確的做事方式。
protected void loginbutton_Click(object sender, EventArgs e)
{
string UsernameRegex = "[a-zA-Z]+";
string PasswordRegex = "[a-zA-Z0-9]+";
if (!Regex.IsMatch(usernametextbox.Text, UsernameRegex))
{
string UsernameCheck = "valid";
}
else
{
string UsernameCheck = "invalid";
}
if (!Regex.IsMatch(passwordtextbox.Text, PasswordRegex))
{
string PasswordCheck = "valid";
}
else
{
string PasswordCheck = "invalid";
}
if(UsernameCheck = "valid") //i will include password here after i solved the problem
{
//do something
}
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString);
conn.Open();
string checkuser = "select count(*) from Users where Username = @username and Password = @password";
SqlCommand com = new SqlCommand(checkuser, conn);
com.Parameters.Add("@username", SqlDbType.NVarChar).Value = usernametextbox.Text;
com.Parameters.Add("@password", SqlDbType.NVarChar).Value = passwordtextbox.Text;
int temp = Convert.ToInt32(com.ExecuteScalar().ToString());
if (temp > 0)
{
Response.Redirect("Cars.aspx");
}
else
{
loginfaillabel.Text = "Your Username or Password doesn't match our records";
}
}
幫助和反饋意見。
這裏是你會怎麼做,在[Web窗體(https://msdn.microsoft.com/en-us/library /a0z2h4sw.aspx)。心連心。 – EdSF
[C#中變量範圍混淆]的可能重複(http://stackoverflow.com/questions/1196941/variable-scope-confusion-in-c-sharp) – Brandon
在if(UsernameCheck =「valid 「)'...等。 – EdSF