الخلفية
بالأمس، قمت باستضافة مثيل Discourse ذاتيًا على الخادم الخاص بي. بعد اكتمال النشر، شرعت في تسجيل حساب المسؤول (admin). ومع ذلك، بعد النقر على زر Register (تسجيل)، لم يكن هناك أي استجابة، وبدت العملية معلقة.
استغرق الأمر مني وقتًا طويلاً لإدراك أن المشكلة كانت بسبب أن كلمة المرور الخاصة بي لا تفي بمتطلبات الحد الأدنى لطول الأحرف.
الحل الحالي والملاحظة
يجب أن أعترف بأنني رأيت التذكير الرسمي والودي الذي ينص على أن كلمة المرور يجب أن تكون 15 حرفًا أو أكثر. على الرغم من هذا الإشعار الواضح، لم أربط هذا المتطلب فورًا بفشل التسجيل. في النهاية، ربطت بينهما ونجحت في تسجيل الحساب.
توصية التحسين
أعتقد أنه يمكن تحسين منطق التسجيل لتجربة مستخدم أفضل. فيما يلي أساليب مقترحة:
-
التحقق من طول كلمة المرور من جانب العميل (Client-Side): إدخال فحص لطول سلسلة كلمة المرور عند الإرسال.
- مخاوف: يثير هذا الأسلوب مخاوف أمنية، حيث قد يقلق المستخدمون من أن الموقع يراقب إدخالهم لكلمة المرور، مما يقلل من جدواه.
-
تحسين تنسيق حقل إدخال كلمة المرور والتغذية الراجعة (مُوصى به): تحسين حقل إدخال كلمة المرور عن طريق إضافة قيود مرئية وتغذية راجعة ديناميكية، على غرار ما يستخدم عادةً لمتطلبات قوة/تنسيق كلمة المرور.
-
2.1. قبل الإدخال (عنصر نائب/تلميح أداة): ◌◌◌◌◌◌◌◌◌◌◌◌◌◌◌
-
2.2. بعد الإدخال (تغذية راجعة ديناميكية): ●●●●●●●●◌◌◌◌◌◌◌
- ب. نظرًا لأن إدخال المستخدم مقنّع (نص مخفي)، فإن الدوائر الفارغة المتبقية تمثل عدد أحرف كلمة المرور التي لا تزال مفقودة، وتمثل الدوائر الصلبة عدد أحرف كلمة المرور التي تم إدخالها بالفعل.
-
أبحث عن تأكيد ما إذا كان الأسلوب 2 مسارًا قابلاً للتطبيق وموصى به للتحسين.