BAĞLANTILARIM

Takip Edin:

0

ASP.NET MVC AJAX LOGIN ÜYE GİRİŞİ

Cumartesi, Ağustos 26, 2017 / / , , , ,

Login işlemini gerçekleştireceğimiz View'ın form bölümü

@using (Html.BeginForm(null, null, FormMethod.Post, new { id = "__AjaxAntiForgeryForm" }))
                {
                    @Html.AntiForgeryToken()

                    <!--begin::Body-->
                    <div class="m-login__body">

                        <!--begin::Signin-->
                        <div class="m-login__signin">
                            <div class="m-login__title">
                                <h3>Giriş Yap</h3>
                            </div>

                            <div id="mesaj" class="alert alert-danger alert-dismissible fade show" role="alert" style="display:none;">
                                <button type="button" class="close" data-dismiss="alert" aria-label="Close"></button>
                                <span id="mesajMetin"></span>
                            </div>

                            <div class="form-group m-form__group">
                                <input class="form-control m-input" type="text" placeholder="E-posta" id="kullaniciAd" name="kullaniciAd" autocomplete="off" required>
                            </div>
                            <div class="form-group m-form__group">
                                <input class="form-control m-input m-login__form-input--last" type="password" placeholder="Şifre" id="sifre" name="sifre" required>
                            </div>

                            <!--end::Form-->
                            <!--begin::Action-->
                            <div class="m-login__action">
                                <a href="#" class="m-link">
                                    <span>Şifremi Unuttum</span>
                                </a>
                                <button id="btnGiris" class="btn btn-primary" onclick="return false;">Giriş</button>
                            </div>

                        </div>

                        <!--end::Signin-->
                    </div>
                    <!--end::Body-->

                }



AJAX Bölümü

<script type="text/javascript">

        $("#btnGiris").click(function () {

            var girisDurum = false;
            var girisHata = "";

            var form = $('#__AjaxAntiForgeryForm');
            var token = $('input[name="__RequestVerificationToken"]', form).val();
            var kullaniciAd = $("#kullaniciAd").val();
            var sifre = $("#sifre").val();

            if (kullaniciAd == "" || sifre == "") {

                $("#mesajMetin").text("Lütfen tüm alanları doldurunuz!");
                $("#mesaj").show();
                return;
            }

            $("#mesaj").hide();
            $("#btnGiris").addClass("m-loader m-loader--right m-loader--light");
            $("#btnGiris").attr("disabled", true);

            $.ajax({
                url: "/Login/GirisKontrol",
                type: 'POST',
                data: {
                    __RequestVerificationToken: token,
                    username: kullaniciAd,
                    password: sifre
                },
                success: function (sonuc) {
                    //alert(sonuc.Durum);

                    if (sonuc.Durum == "OK") {

                        girisDurum = true;

                    }
                    else {

                        girisHata = sonuc.Durum;

                    }
                },
                complete: function () {

                    if (girisDurum == true) {

                        //alert("başarılı")
                        window.location.href = "/Profil";

                    } else {

                        //alert(girisHata);

                        if (girisHata == "BULUNAMADI") {

                            $("#mesajMetin").text("Kullanıcı bulunamadı. Bilgilerinizi kontrol ediniz.");
                            $("#mesaj").show();
                            $("#btnGiris").removeClass("m-loader m-loader--right m-loader--light");
                            $("#btnGiris").attr("disabled", false);

                        }
                        else {

                            $("#mesajMetin").text(girisHata);
                            $("#mesaj").show();
                            $("#btnGiris").removeClass("m-loader m-loader--right m-loader--light");
                            $("#btnGiris").attr("disabled", false);

                        }

                    }

                    girisDurum = false;

                }
            });

            return false;

        });
    </script>

Controller Bölümü

[HttpPost]
        [ValidateAntiForgeryToken]
        public JsonResult GirisKontrol(string username, string password)
        {
            try
            {
                System.Threading.Thread.Sleep(100);

                if (ModelState.IsValid)
                {
                    var md5Sifre = MD5Sifrele(password);

                    var veri = Login.GirisYap(username, md5Sifre);

                    if (veri != null)
                    {

                        Session["KULLANICIID"] = veri.KullaniciId.ToString();
                        Session["KULLANICIAD"] = veri.KullaniciAd.ToString();
                        Session["KULLANICIEPOSTA"] = veri.Eposta.ToString();
                        Session["PROFILAD"] = veri.Ad.ToString();
                        Session["PROFILSOYAD"] = veri.Soyad.ToString();
                        Session["PROFIL_AD_SOYAD"] = Session["PROFILAD"] + " " + Session["PROFILSOYAD"];
                        Session["YONETIM_YETKI"] = "1";

                        string ilkHarfAd = ".";
                        string ilkHarfSoyad = ".";

                        if (Session["PROFILAD"].ToString() != String.Empty)
                        {
                            ilkHarfAd = Session["PROFILAD"].ToString().Substring(0, 1);
                        }
                        if (Session["PROFILSOYAD"].ToString() != String.Empty)
                        {
                            ilkHarfSoyad = Session["PROFILSOYAD"].ToString().Substring(0, 1);
                        }

                        string adSoyadIlkHarfler = ilkHarfAd.ToUpper() + ilkHarfSoyad.ToUpper();
                        Session["ADSOYAD_ILK_HARFLER"] = adSoyadIlkHarfler;

                        //ViewBag.Sonuc = "Giriş başarılı!";
                        return Json(new { Durum = "OK" }, JsonRequestBehavior.AllowGet);
                    }
                    else
                    {
                        return Json(new { Durum = "BULUNAMADI" }, JsonRequestBehavior.AllowGet);
                    }
                }

                return Json(new { Durum = "HATA" });
            }
            catch (Exception ex)
            {
                return Json(new { Durum = "HATA ~ " + ex.Message }, JsonRequestBehavior.AllowGet);
            }
        }

0 yorum

SON YORUMLAR