نمایش نتایج 1 تا 8 از 8

نام تاپیک: ثبتنام کاربر و انتقال آن به صفحه اصلی

  1. #1

    ثبتنام کاربر و انتقال آن به صفحه اصلی

    سلام دوستان
    دوستان من یه صفحه ثبتنام کاربر ساختم.میخام وقتی یه کاربری ثبتنام کرد به صفحه اصلی بره و لاگین کنه و موقع ثبت اطلاعات اگر کاربری دوبار روی صفحه ثبتنام کلیک کرد باعث نشود دوبار در دیتابیس ذخیره شود.
    این کد رجیستر در کنترلر home:

      public ActionResult Register(User user)
    {
    UserRepository blUser = new UserRepository();
    if (ModelState.IsValid)
    {

    if (blUser.Add(user))
    {
    //موفق
    MessageBox.Show("با موفقیت ثبت شد", MessageType.Success);
    return RedirectToAction("Index");
    }
    else
    {
    //نا موفق
    return MessageBox.Show("ثبت نشد", MessageType.Error);
    }
    }
    else
    {
    //خطا مقداری
    return MessageBox.Show(ModelState.GetErrors(), MessageType.Warning);
    }
    }



    از این کد هم استفاده کردم ولی دیگه پیغام ثبت شد رو بهم نشون نمیده:
    @*<script>
    $('form').submit(function () {
    if ($(this).valid()) {
    $(':submit', this).attr('disabled', 'disabled');
    }
    });</script>*@

    }

  2. #2

    Thumbs up نقل قول: ثبتنام کاربر و انتقال آن به صفحه اصلی

    اگر از Identity استفاده میکنید ، خودش براتون اینکار رو انجام میده .
    اما در پروژه های پیشفرض بعد از ثبت نام ، خودش کاربر رو بلافاصله بعد از ثبت نام ، لاگین میکنه ; اگر میخواید به این شکل نباشه باید این کد رو :

    await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false);


    از اکشن Register حذف کنید :

    [HttpPost]
    [AllowAnonymous]
    [ValidateAntiForgeryToken]
    public async Task<ActionResult> Register(RegisterViewModel model)
    {
    if (ModelState.IsValid)
    {
    var user = new ApplicationUser { UserName = model.Email, Email = model.Email };
    var result = await UserManager.CreateAsync(user, model.Password);
    if (result.Succeeded)
    {
    await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false);

    return RedirectToAction("Index", "Home");
    }
    AddErrors(result);
    }

    // If we got this far, something failed, redisplay form

  3. #3

    نقل قول: ثبتنام کاربر و انتقال آن به صفحه اصلی

    خیر من از identity استفاده نمیکنم.
    از ممبرشیپ ستفاده کردم.
    یه جدول یوزر دارم که کاربران رو توش ذخیره میکنم.
    درکنترلر home هم یه اکشن login ویه اکشن register

    اکشن لاگین بصورت زیر هست:
      [HttpPost]
    public ActionResult Login(string username, string password, bool rememberme)
    {
    var blUser = new UserRepository();
    if (blUser.Exist(username, password))
    {
    FormsAuthentication.SetAuthCookie(username, rememberme);

    return RedirectToAction("Index");
    }
    else
    {
    ViewBag.Message = "نام کاربری یا پسورد اشتباه است";
    }
    return View();
    }

    که authentication رو در گلوبال انجام دادم:
       protected void FormsAuthentication_OnAuthenticate(Object sender, FormsAuthenticationEventArgs e)
    {
    if (FormsAuthentication.CookiesSupported == true)
    {
    if (Request.Cookies[FormsAuthentication.FormsCookieName] != null)
    {
    string username = FormsAuthentication.Decrypt(Request.Cookies[FormsAuthentication.FormsCookieName].Value).Name;
    var blUser = new UserRepository();
    string roles = blUser.Where(p => p.Email == username).Single().Roles;
    e.User = new GenericPrincipal(new System.Security.Principal.GenericIdentity(username ), roles.Split(','));
    }
    }

    بدرستی کد شما رو متوجه نشدم الان من باید زمانیکه یه یوزر ثبتنام میکنه رو بصورت اتوماتیک لاگین رو براش انجام بدم؟

  4. #4

    نقل قول: ثبتنام کاربر و انتقال آن به صفحه اصلی

    من طبق کدی که شما گذاشتین کد ریجیستر خودم رو تغییر دادم. برنامه داره بدرستی کار میکنه با trace که انجام دادم اما redirect به صفحه index انجام نمیشه و تو صفحه register میمونه

     public ActionResult Register(User user)
    {
    UserRepository blUser = new UserRepository();
    if (ModelState.IsValid)
    {
    if (blUser.Add(user))
    {
    if (blUser.Exist(user.Email,user.Password))
    {
    FormsAuthentication.SetAuthCookie(user.Email, false);
    }
    //موفق
    return RedirectToAction("Index");
    }
    else
    {
    //نا موفق
    return MessageBox.Show("ثبت نشد", MessageType.Error);
    }
    }
    else
    {
    //خطا مقداری
    return MessageBox.Show(ModelState.GetErrors(), MessageType.Warning);
    }
    }

  5. #5

    نقل قول: ثبتنام کاربر و انتقال آن به صفحه اصلی

    از این کد استفاده کنید برای Redirect به صفحه index :

    return RedirectToAction("Index", "Home");


    چون اگر نام کنترلر رو ندید ، صفحه ی index کنترلر Account رو برای redirect تشخیص میده و دوباره مجدد به صفحه Register برمیگرده.

  6. #6

    نقل قول: ثبتنام کاربر و انتقال آن به صفحه اصلی

    ممنون درست شد.
    من اولین باره دارم وبسایت طراحی میکنم.میشه لطف کنین بگین چه نکاتی برای امنیت کاربرانی که ثبتنام میکنن باید به وبسایتم اضافه کنم.
    چون من فقط همین authentication رو بکار بردم و اینکه چک میکنم یوزر تکراری ثبت نشده باشه.
    ممنون

  7. #7

    نقل قول: ثبتنام کاربر و انتقال آن به صفحه اصلی

    در صفحه ثبت نام و ورود کاربران ، از Captcha استفاده کنید تا از ثبت نام ربات ها و Spammer ها جلوگیری شود.
    آموزش : http://sahraweb.com/post/204/%D8%A7%...%D8%B1-ASP-MVC

  8. #8

    نقل قول: ثبتنام کاربر و انتقال آن به صفحه اصلی

    بسیار ممنون
    من از این کد استفاده کردم.فقط چطور میتونم پیغام خطا رو تو پیج خودم نشون بدم و بصورت پیغام جاوااسگریپت تو یه پیج دیگه نباشه

تاپیک های مشابه

  1. دادن موضوعات به صفحه و انتقال آن به صفحه ای دیگیر
    نوشته شده توسط alireza javakar در بخش Android Studio
    پاسخ: 5
    آخرین پست: سه شنبه 13 اسفند 1392, 16:06 عصر
  2. سوال: گرفتن یک مقدار از کاربر و انتقال آن از طریق socket و استریم به سمت سرور و ذخیره آن در یک String
    نوشته شده توسط pro_mvb در بخش Java SE : نگارش استاندارد جاوا
    پاسخ: 11
    آخرین پست: شنبه 16 دی 1391, 20:29 عصر
  3. پاسخ: 12
    آخرین پست: شنبه 30 خرداد 1388, 18:54 عصر
  4. برگشت به صفحه اصلی در صورت رخداد خطا(catch)
    نوشته شده توسط morteza_lll در بخش ASP.NET Web Forms
    پاسخ: 1
    آخرین پست: پنج شنبه 03 آبان 1386, 10:25 صبح
  5. خواندن اطلاعات از Excel و انتقال آن به Sql Server
    نوشته شده توسط RK977877 در بخش بانک های اطلاعاتی در Delphi
    پاسخ: 4
    آخرین پست: چهارشنبه 31 مرداد 1386, 11:17 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •