شما یه کاری انجام بده
برای ثبت نام کاربر جدید و ساخت ایمیل یک فایل پردازش دیگه درست کن چرا که اگه فایل پردازش شما یکی باشه این حلقه ی تکرار مدام با ثبت نام کاربر جدید انجام میشه.
یا اگه ساخت فایل جدید امکان پذیر نیست، باید شرط تعیین کنی که وقتی افرادی هم زمان در حال ثبت نام هستن و این فایل قراره پردازش بشه، به بانک اطلاعاتی نگاه کنه و ببینه آیا افرادی که در بانک اطلاعاتی قرار دارن و در داخل حلقه داره روشون عملیات انجام میشه، ایمیل دارن یا خیر؟
اگه ایمیل دارن، رد بشه بره برای دور بعدی، در غیر این صورت برای اون فرد، ایمیل ساخته بشه.
قانون فایل ها در پردازش کردن به این صورت هست که هر وقت این فایل توسط کاربری فراخوانده میشه، کدهای اون فایل از اول خونده و اجرا میشه.
این طور نیست که برنامه به کاربر جدید بگه تو صبر کن من کارم رو انجام بدم بعد نوبت به تو برسه.
ممکنه به صورت همزمان، چند نفر بخوان از یه فایل استفاده کنن، اون موقع چه اتفاقی پیش میاد؟
آخرین پیشنهادم اینه که در فایلت، نشست یا کوکی ایجاد کن؛ شاید با ایجاد نشست، تداخلی در اجرای فایل به وجود نیاد.

اگه من باشم، برای خودم یک فایل مجزا برای ساخت ایمیل دست جمعی درست می کنم که فقط خودم بهش دسترسی داشته باشم و برای کاربران دیگه، فقط یک فایل.
فایلی که مال خودم هست دارای حلقه ی تکرار می کنم و اون شرطی رو که در بالا گفتم در فایلم پیاده سازی می کنم تا اختلالی در کار خودم و سایر کاربران ایجاد نشه.