Thứ Năm, 2 tháng 2, 2023

[.NET] Hướng dẫn sử dụng Capcha trong Form đăng ký

 

Sử dụng Capcha để chống BOT SPAM đăng ký.


Vào Manage NutGet Package, Tìm kiếm "captchamvc". Cài đặt CaptchaMVC5.


Trong View DangKy , bổ sung sử dụng thư viện capcha và thêm capcha vào Form

@using ShopBanHang.Models


@using CaptchaMvc.HtmlHelpers

@using CaptchaMvc

 

@model ThanhVien

@{

    ViewBag.Title = "DangKy";

    Layout = "~/Views/Layout/ProductLayout.cshtml";

}


<div class=" container">

    <div class=" register">

        <h1>ĐĂNG KÝ</h1>

        <form method="post" action="">

            <div class="col-md-6 register-top-grid">

                <h3>Thông tin cá nhân</h3>

                <div>

                    <span>Tài khoản</span>

                    @Html.TextBox("TaiKhoan")

                </div>

                <div>

                    <span>Họ tên</span>

                    @Html.TextBox("HoTen")

                </div>

                <div>

                    <span>Địa chỉ</span>

                    @Html.TextBox("DiaChi")

                </div>

                <div>

                    <span>Email Address</span>

                    @Html.TextBox("Email")

                </div>

                <div>

                    <span>Số điện thoại</span>

                    @Html.TextBox("DienThoai")

                </div>


            </div>

            <div class="col-md-6 register-top-grid register-bottom-grid">

                <h3>Thông tin đăng nhập</h3>

                <div>

                    <span>Password</span>

                    @Html.Password("MatKhau")

                </div>

                <div>

                    <span>Confirm Password</span>

                    @Html.Password("NhapLaiMatKhau")

                </div>

                <div>

                    <span>Câu hỏi bí mật</span>

                    <input type="text" name="CauHoi" />

                </div>

                <div>

                    <span>Câu trả lời</span>

                    <input type="text" name="CauTraLoi" />

                </div>

                <div>

                    <span></span>

                    @Html.Captcha(5) <!--Sẽ capcha 5 chữ cái-->

                </div>

                

                <input type="submit" value="submit">


            </div>

            <div class="clearfix"> </div>

        </form>

    </div>

</div>

<h4 style="color:red">@ViewBag.ThongBao</h4>

<!--//content-->

Trong HomeController, bổ sung phần kiểm tra Capcha
using CaptchaMvc.HtmlHelpers;
using CaptchaMvc;
[HttpGet]
        public ActionResult DangKy()
        {
            return View();

        }
        [HttpPost]
        public ActionResult DangKy(ThanhVien tv) //Doan nay thay vi dung formcollection thi dung doi tuong, de tu nhan gia tri form truyen qua
        {
            //Kiểm tra Capcha hợp lệ
            if (this.IsCaptchaValid("Captcha is not valid"))
            {
                ViewBag.ThongBao = "Thêm thành công";
                //Thêm khách hàng vào CSDH
                db.ThanhViens.Add(tv);
                db.SaveChanges();
                return View();

            }
            else 
            { 
                ViewBag.ThongBao = "Sai mã capcha";
                return View();
            }

        }







Không có nhận xét nào:

Đăng nhận xét