【解決方法】ユーザー登録が成功したときにメッセージボックスを表示し、ログインページにリダイレクトするにはどうすればよいですか


私の signUp ボタンイベントは

C#
protected void signup_Click(object sender, EventArgs e)
    {
        string con = ConfigurationManager.ConnectionStrings["connection"].ConnectionString;
        SqlConnection conn = new SqlConnection(con);
        conn.Open();
       if (selectques.SelectedItem.Text == "Write your own question?")
        {
            SqlCommand cmd = new SqlCommand("insert into registration values('" + username.Text + "','" + passwrd.Text + "','" + emailadd.Text + "','" + alterquestion.Text + "','" + securityanswer.Text + "')", conn);
            cmd.ExecuteNonQuery();
            conn.Close();
        }
        else
        {
            SqlCommand cmd = new SqlCommand("insert into registration values('" + username.Text + "','" + passwrd.Text + "','" + emailadd.Text + "','" + selectques.Text + "','" + securityanswer.Text + "')", conn);
            cmd.ExecuteNonQuery();
            conn.Close();
        }

正常に登録した後、どのようにメッセージを表示できますか Successful Registered 彼をログインページにリダイレクトします。 ポップアップウィンドウまたはメッセージボックスにメッセージを表示したい。

解決策 2

マークに同意します。 SQL インジェクション攻撃を防ぎます。 これらを確認してください

SQL インジェクション
SQL インジェクション攻撃とその防止方法に関するヒント[^]
SQL インジェクション攻撃[^]
SQL インジェクションのノウハウ[^]
SQL インジェクションとクロスサイト スクリプティング[^]

リダイレクトとメッセージボックスについては、こちらを参照してください

C#
ClientScript.RegisterStartupScript(Page.GetType(), "Message", "alert('Successful Registered');window.location='login.aspx';", true);

ページで AJAX を使用する場合、

C#
ScriptManager.RegisterStartupScript(Page, Page.GetType(), "Message", "alert('Successful Registered');window.location='login.aspx';", true);

解決策 1

何よりもまず、検証されていないユーザー入力を受け入れて、SQL ステートメントで使用しないでください。 これまで。 SQL インジェクション攻撃にさらされています。 あなたのアプリケーションは非常に安全ではありません。 ストアド プロシージャを使用するか、少なくともパラメーター化されたクエリを使用する必要があります。

ユーザーを別のページに送りたい場合は、Response.Redirect または Server.Transfer を使用します。 最初にメッセージを表示するには、Page.RegisterClientScriptBlock で JavaScript を挿入できます。 これらの方法はすべて十分に文書化されています。

解決策 3

Alert.show(“ログアウトに成功しました”);

これを試して……….

コメント

タイトルとURLをコピーしました