我有一些代碼記錄按鈕被點擊的次數。事實上,當頁面第一次加載時,計數器被設置爲0.在每次回發時,計數器增加1.我在頁面上只有一個按鈕。代碼邏輯中的錯誤
這背後的主要思想是允許用戶輸入一些細節4次。如果他四次輸入無效細節,他將被重定向到一個錯誤頁面。否則,他會被重定向到確認頁面。
這是我的代碼:
if (!this.IsPostBack)
{
Session["Count"] = 0;
}
else
{
if (Session["Count"] == null)
{
Session.Abandon();
Response.Redirect("CheckOutErrorPage.htm");
}
else
{
int count = (int)Session["Count"];
if (count == 3)
{
Session.Abandon();
Response.Redirect("CheckOutFailure.aspx");
}
else
{
count++;
Session["Count"] = count;
}
}
}
一切正常,因爲它應該只是如果用戶連續3次輸入無效的詳細信息,然後他進入4日時的有效信息,用戶會被重定向到錯誤頁面(因爲他已經嘗試了4次)而不是確認頁面。
我該如何解決這個問題?
爲什麼不把'count == 3'改成'count == 4'? – Bobson
我編輯了你的標題。請參閱:「[應該在其標題中包含」標籤「](http://meta.stackexchange.com/questions/19190/)」,其中的共識是「不,他們不應該」。 –
這不是解決你的問題,但這聽起來像可怕的可用性,爲什麼要關心如果有人輸入錯誤(只要他們不是惡意)? – Matthew