View Full Version : جلوگیری از وارد کردن آدرس ایمیل
goldcom
جمعه 26 آذر 1389, 03:22 صبح
یلام
من یک فرم ثبت نام دارم
میخوام طرف آی دی یاهو رو بزنه ، بدون @
یعنی کلا میخوام جلوی وارد شدن @ رو تو دیتابیس بگیرم
و اینکه یک کد امنیتی میخوام برای سایتم بذارم
محتاج به راهنمایی شما هستم:قلب:
narsic
جمعه 26 آذر 1389, 11:04 صبح
با سلام
اگه فقط میخواین @ نباشه میتونید از دستور str_replace استفاده کنید و @ را با کاراکتر خالی یا هر چیزه دیگه جایگزین کنید .
موفق باشید
goldcom
شنبه 27 آذر 1389, 01:24 صبح
میشه نمونه کاملش رو نشونم بدین؟
من تازه کارم
maysam.m
شنبه 27 آذر 1389, 15:31 عصر
با سلام
اگه فقط میخواین @ نباشه میتونید از دستور str_replace استفاده کنید و @ را با کاراکتر خالی یا هر چیزه دیگه جایگزین کنید .
موفق باشید
این روش مناسبی نمیتواند باشد چرا که ممکن است کاربر ایمیل خود را وارد کند و با حذف @ اطلاعات غلط وارد دیتابیس شود:
مثلا کاربر ایمیل خود را بدین صورت وارد کند:
testid@yahoo.com
و با حذف @ بدین صورت وارد دیتابیس میشود:
testidyahoo.com
بهتر است که اطلاعات را چک کنید و اگر @ در فیلد بود به کاربر اطلاع دهید که آی دی خود را وارد کند بدون @yahoo.com
البته این ساده ترین راه است و میتوان الگوهای بهتری طراحی کرد.
parselearn
شنبه 27 آذر 1389, 18:37 عصر
با تابع strpos ميتونيد ببينيد كاربر @ را وارد كرده يا نه
كه اگر وادر كرده بود بايد پيام خطا بديد
UnnamE
شنبه 27 آذر 1389, 19:13 عصر
اي بابا
موضوع رو پيچ ندين
با توابع preg_macth, preg_replace, ميتوني همه اين كارها رو انجام بدي
در موردشون سايت رسمي php جستجو كن!
binyaft
شنبه 27 آذر 1389, 20:01 عصر
با تابع strpos ميتونيد ببينيد كاربر @ را وارد كرده يا نه
كه اگر وادر كرده بود بايد پيام خطا بديد
اي بابا
موضوع رو پيچ ندين
با توابع preg_macth, preg_replace, ميتوني همه اين كارها رو انجام بدي
در موردشون سايت رسمي php جستجو كن!
به نظر بنده حقیر ، برای یک چنین کاری استفاده از regex جالب نیست ( چون توابع پر سرعت تری وجود داره ) ، مثلا strpos ای که دوستمون اشاره کردند!
UnnamE
یک شنبه 28 آذر 1389, 00:34 صبح
منم موافق اين آقاي بنده حقير هستم:لبخند:
من كلي گفتم چون اكثر كارهاي VALIDATE رو اولين چيز به ذهنم ميرسه همين regex هست!
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.