السلام عليكم
لدي نموذج تسجيل ويوجد زر "button" عند الضغط عليه المفترض أن يتم تسجيل معلومات المستخدم مرة واحدة في قاعدة البيانات لكن ما يحدث هو أن أمر Insert يتكرر مرتين مرة عند الضغط على الزر ومرة عند إعادة التوجيه إلى الصفحة التالية
هذا كود ال front-end
<div class="modal-body">
<asp:UpdatePanel ID="signup_updatePanel" UpdateMode="Always" runat="server">
<ContentTemplate>
<div class="form-group">
<asp:RequiredFieldValidator ID="name_reqVal" ControlToValidate="signup_name" ValidationGroup="signup_val" ErrorMessage="لا يمكنك ترك حقل الاسم فارغاً" CssClass="small text-danger" Display="Dynamic" runat="server"></asp:RequiredFieldValidator>
<asp:TextBox ID="signup_name" ValidationGroup="signup_val" CssClass="form-control" placeholder="الاسم" runat="server"></asp:TextBox>
</div>
<div class="form-group">
<asp:RequiredFieldValidator ID="email_reqVAl" ControlToValidate="signup_mail" ValidationGroup="signup_val" ErrorMessage="البريد الإلكتروني مطلوب" CssClass="small text-danger" Display="Dynamic" runat="server"></asp:RequiredFieldValidator>
<asp:TextBox ID="signup_mail" ValidationGroup="signup_val" TextMode="Email" CssClass="form-control" placeholder="البريد الإلكتروني" runat="server"></asp:TextBox>
</div>
<div class="form-group">
<asp:RequiredFieldValidator ID="password_reqVal" ControlToValidate="signup_password" ValidationGroup="signup_val" ErrorMessage="كلمة المرور مطلوبة" CssClass="small text-danger" Display="Dynamic" runat="server"></asp:RequiredFieldValidator>
<asp:TextBox ID="signup_password" ValidationGroup="signup_val" TextMode="Password" CssClass="form-control" placeholder="كلمة المرور" runat="server"></asp:TextBox>
</div>
<div class="form-group">
<button id="signup_btn" validationgroup="signup_val" class="btn btn-primary btn-block shadow z3 has-hover" onserverclick="signup_btn_ServerClick" runat="server">تسجيل</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
كود ال Back-end
con.open();
SqlCommand signup_cmd = new SqlCommand("INSERT INTO Users(Name,Email,Password,Token) VALUES ( @name, @mail, @password, @Token)", con);
signup_cmd.Parameters.AddWithValue("@name", signup_name.Text);
signup_cmd.Parameters.AddWithValue("@mail", signup_mail.Text);
signup_cmd.Parameters.AddWithValue("@password", signup_password.Text);
signup_cmd.Parameters.AddWithValue("@Token", user_token);
int backResult = signup_cmd.ExecuteNonQuery();
if (backResult != 0)
{
Session["signin_session"] = user_token;
Response.Cookies["signin_cookie"].Value = user_token;
Response.Cookies["signin_cookie"].Expires = DateTime.Now.AddDays(15);
Response.Redirect("~/Account.aspx?alert=successSignup");
}
con.close();
إذا كان هناك من يمكنه المساعدة فسأكون شاكراً
التعليقات