پرش به مطلب اصلی

بازیابی رمز عبور

این عملکرد فرایند بازیابی رمز عبور را شروع می‌کند: کد تأیید برای کاربر فرستاده می‌شود و پس از تأیید، پنجره «ثبت رمز جدید» باز می‌گردد. مقدار شناسه از یک متغیر خوانده می‌شود، بنابراین می‌توانید فرم را با ظاهر دلخواه خودتان بسازید و از ویجت فرم بازیابی رمز بی‌نیاز شوید.

راهنمای کامل: طراحی آزاد فرم ورود و عضویت.

کاربردها

  • ساخت صفحه «رمز را فراموش کرده‌اید؟» با ظاهر دلخواه.
  • قرار دادن بازیابی رمز داخل یک شیت، کنار فرم ورود.

تنظیمات

  • متغیر موبایل یا ایمیل: نام متغیری که شناسه کاربر را نگه می‌دارد.
important

در این فیلد نام متغیر را وارد کنید، نه مقدار.

نتیجه اجرا

متغیرمقدار
sys.user.saveSuccesstrue وقتی رمز جدید با موفقیت ثبت شد، false در صورت خطا
sys.user.saveErrorپیام خطا؛ در صورت موفقیت خالی می‌شود

پس از موفقیت، پیام «رمز عبور با موفقیت تغییر یافت» نمایش داده می‌شود.

مراحلی که خودکار انجام می‌شوند

  1. سرور یک کد تأیید به موبایل یا ایمیل کاربر می‌فرستد.
  2. پنجره ورود کد تأیید باز می‌شود.
  3. پس از تأیید، پنجره «ثبت رمز جدید» باز می‌شود که خودش فیلد رمز جدید و تکرار آن را دارد و برابری‌شان را می‌سنجد.
چرا ثبت رمز جدید عملکرد جداگانه ندارد

ثبت رمز جدید به شناسه نشست و کد تأییدی نیاز دارد که فقط در همین جریان ساخته می‌شوند. جدا کردن آن به یک عملکرد مستقل یعنی صاحب اپ باید این دو مقدار را دستی جابه‌جا کند؛ به همین دلیل هر دو مرحله داخل خود عملکرد انجام می‌شوند.

انصراف کاربر

اگر کاربر پنجره کد تأیید یا پنجره ثبت رمز جدید را ببندد، هیچ‌کدام از دو متغیر نتیجه تغییر نمی‌کنند.

توضیحات

  • ارقام فارسی و عربی به‌صورت خودکار به ارقام انگلیسی تبدیل می‌شوند.
  • اگر اپ روی ورود با رمز یکبارمصرف تنظیم شده باشد، کاربر اصلاً رمز ندارد؛ سرور پیام «برای ورود نیازی به رمز عبور نیست...» برمی‌گرداند و آن در sys.user.saveError قرار می‌گیرد. در این حالت بهتر است اصلاً لینک بازیابی رمز را نشان ندهید.
  • اگر متغیر شناسه خالی باشد، درخواستی به سرور فرستاده نمی‌شود.
  • برای اجرا به اینترنت نیاز است.

نکات تکمیلی

  • سریع‌ترین راه ساخت این فرم، افزودن بلوک آماده فرم بازیابی رمز از مسیر حساب کاربری ← بلوک‌های حساب کاربری است.
  • بعد از موفقیت، معمولاً باید کاربر را به صفحه ورود برگردانید؛ ورود به صفحه ورود را با شرط sys.user.saveSuccess == true اجرا کنید.

خطاهای رایج

  • وارد کردن مقدار ثابت به‌جای نام متغیر.
  • نمایش لینک بازیابی رمز در اپی که ورودش با رمز یکبارمصرف است.
  • نمایش ندادن sys.user.saveError.