استيراد phpBB غير مكتمل بسبب عنوان بريد إلكتروني غير صالح للمستخدم (مسافة زائدة)

بعد الاستيراد، يوجد العديد من المستخدمين في حالة معلقة في Discourse لأن عنوان بريدهم الإلكتروني في phpBB يحتوي على مسافة زائدة. تحتوي صفحات ملخص المستخدم على هذه الرسالة:

هذا المستخدم معلق.
السبب: بريد إلكتروني غير صالح عند الاستيراد

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

صحيح. في import_scripts/phpbb3/importers/user_importer.rb حول السطر 27 أضف .strip هكذا:

        email: row[:user_email].strip,

هذا ليس خطأ، ولكن بما أن هذا الكود موجود منذ ما يقرب من عقد من الزمان ولم يتم إصلاحه بعد، فليس من الواضح أنك على حق. كان من الأسهل أن أخبرك بكيفية إصلاحه في كود phpbb3 بدلاً من base.rb (والذي أتفق معك أنه سيكون أفضل).

فحص سريع لتحديد ما إذا كانت لديك هذه المشكلة المحتملة. قم بتشغيل استعلام SQL هذا في قاعدة بيانات phpbb الخاصة بك:

SELECT `user_email` FROM `phpbb_users` where CHAR_LENGTH(`user_email`) != CHAR_LENGTH(TRIM(`user_email`)) ORDER BY `user_id` ASC
إعجابَين (2)