قام شخص ما بإنشاء حسابين متطابقين على موقع الويب الخاص بي في نفس الوقت بالضبط. كيف يكون ذلك ممكنا؟

StackOverflow https://stackoverflow.com/questions/1367239

  •  21-09-2019
  •  | 
  •  

سؤال

لا أستطيع أن أصدق هذا - قام شخص ما بالفعل بإنشاء حسابين على موقع الويب الخاص بشبكتي الاجتماعية باستخدام نفس البريد الإلكتروني على الرغم من وجود كل من اختبارات التحقق من صحة الخادم بالإضافة إلى حدوث شيء من هذا القبيل. ولكن احصل على هذا الوقت الذي لوحظ في إنشاء كل من الحسابين في نفس الوقت بالضبط.

لسبب ما ، أشك في أن هذا كان ممكنًا باستخدام النماذج أو أي واجهة - ومع ذلك فأنا أكثر من فضول لأجد كيف حدث هذا؟ أي شخص لديه أي أفكار هنا؟

هل كانت مفيدة؟

المحلول

لسبب ما ، أشك في أن هذا كان ممكنًا باستخدام النماذج أو أي واجهة - ومع ذلك فأنا أكثر من فضولي لأجد كيف حدث هذا؟ أي شخص لديه أي أفكار هنا!

على الأرجح ، متصفح مزدوج الذي لم تتبعه بشكل صحيح.

إذا كنت لا تريد أن يشارك شخصان عنوان بريد إلكتروني واحد في شبكتك الاجتماعية ، فقم بعمل أ UNIQUE قيد على email ميدان.

لتجنب النشرات المزدوجة ، قم بإنشاء سلسلة عشوائية في عنصر تحكم مخفي على صفحتك ، واحتفظ بها في عمود وجعل هذا العمود UNIQUE.

نصائح أخرى

ربما لأنك لا تتعامل مع هذا القيد الفريد في قاعدة البيانات ، إذا كان لديك قيود فريدة على عمود البريد الإلكتروني في DB ، فلن تواجه هذا النوع من المشكلات

يجب أن يكون لديك قيد فريدة على email أو username عمود جدول المستخدمين.

لا تعتمد على عمليات التحقق من جانب العميل! تلك فقط للزائر كمعلومات. تأكد دائمًا من إجراء عمليات التحقق من صحة من جانب الخادم.

أظن أن شخصًا ما استخدم برنامجًا نصيًا للاشتراك في موقعك كاختبار لإضافة عشرات الحسابات لملء موقعك بالمنتدى غير المرغوب فيه أو أي شيء آخر. بمجرد إضافة حسابين ، يختبرون مدى سهولة ذلك. على ما يبدو ، الأمر سهل للغاية. في المرة القادمة ، قد يقومون بإنشاء ألف حساب ويستخدمونه لإغراق نظامك تلقائيًا بالرسائل غير المرغوب فيها. حظا سعيدا في محاولة للتخلص من هذا كل شيء.

تم توفير تلميحات مهمة بالفعل: فرض عناوين البريد الإلكتروني الفريدة وأسماء المستخدمين الفريدة. ومع ذلك ، عندما اشترك شخص ما في موقعك للتو ، تأكد من أنه لا يمكنه إنشاء المزيد من الحسابات من عنوان IP هذا لمدة نصف ساعة على الأقل. ثم أنت تزعج هذه البرامج النصية الآلية قليلاً.

من المؤكد أن السبب الأكثر ترجيحًا هو أن المستخدم قد قدم النموذج مرتين.

أفضل طريقة لتجنب ذلك هي استخدام إعادة توجيه بعد نقاط البيعT طريقة.

إذا كنت تتلقى بطريقة أو بأخرى منشورات مزدوجة ولا يتم التعامل مع القيود/المعاملات الخاصة بك بشكل صحيح ، فمن السهل جدًا القيام بذلك.

التقديمات المزدوجة النموذج (خاصة عندما تسببها JavaScript) ، يمكن أن تقترب إلى حد ما في الوقت المناسب إلى الخادم. تحقق من ملفات سجل الوصول الخاصة بك للحصول على مشاركات مزدوجة.

أعتقد بين المنشورات الأخرى ، لديك إجابتك. من المحتمل ألا يكون هناك خطوة فريدة في الحقل في قاعدة البيانات وشخص ينقر نقرًا مزدوجًا على زر الإرسال مما يتيح لك منشورًا مزدوجًا.

من الممارسات الجيدة تعيين قيود DB الخاصة بك بشكل صحيح ومن التجربة ، وعادة ما يكون TPO تعطيل زر الإرسال على جانب العميل نقرة (JavaScript) بمجرد النقر عليها لمنع هؤلاء المستخدمين الذين لا يزالون يحاولون النقر المزدوج على كل شيء على الويب.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top