لوگوی جشنواره وب و موبایل ایران

PHP

اعتبارسنجی فیلدهای email و url با عبارات منظم (Regular Expressions)

تبلیغات
کانال تلگرام فتولیا
دوره آموزش طراحی وب تبریز

در بسیاری از پروژه هایی که برنامه نویسان وب می نویسند به اعتبارسنجی(Validation) ورودی های کاربران نیاز پیدا می کنند . مثلا رد فرم های تماس ، ثبت نام ، نظر و … که باید چک شود که آیا داده ورودی کاربر مطابق همان فرمتی است که می خواهیم یا خیر . دو مورد از این کار بیشتر از همه کاربرد دارند که اعتبارسنجی ایمیل و وب سایت است .

این کار با استفاده از عبارات منظم صورت می گیرد .در ادامه دو نمونه از اعتبارسنجی ایمیل و وبسایت را می بینیم .

 

اعتبارسنجی Email

ایمیل فیلدی است که در اکثر فرم ها وجود دارد و پراستفاده است .برای چک کردن صحت آن می توانید از کد زیر استفاده کنید :

در کد بالا یک رشته از عبارات منظم را به تابع preg_match دادیم و در آرگومان بعدی آن یک متغیر را که حاوی ایمیل است که کاربر وارد کرده است . اگر ایمیل با الگوی داده شده مطابقت داشته باشد ، این تابع مقدار درست یا true و اگر نباشد مقدار غلط یا false را بر می گرداند.شاید برای بعضی از دوستان ناآشنا به جزئیات php سوال ایجاد شود که کار علامت ! قبل از تابع چیست ؟ کار این عملگر ، برعکس کردن نتیجه برگشت داده شده توسط تابع است .

 

اعتبارسنجی URL

برای تشخیص درست بودن یک آدرس وب نیز می توانیم از کد زیر استفاده کنیم .

خوب در این دو نمونه کمی با عبارات منظم یا Regural Expressions آشنا شدیم . برای آشنایی بیشتر با آن می توانید به این مطلب سری بزنید (راهنمای سریع عبارات منظم در php)

در همین رابطه مطالعه کنید:   با autoload زندگي آسان مي شود!

به عنوان یک ترفند ، اگر خواستید برای validate کردن ورودی های دیگر هم از عبارات منظم استفاده کنید ، می توانید در گوگل آن را با نام کلیدی regex جستجو کنید . مثلا email regex یا url regex .

2 Comments

  1. اعتبار سنجی فیلد های ورودی برای افزایش امنیت خیلی مهمه. همینطور پیشنهاد میکنم کل محتوای ورودی رو با فرمان str_ireplace برای فرمان های SQL جست و جو کنید. یک نمونه اون اینجاست
    همینطور میتونید http:// رو با عبارت خالی “” جابجا کنید و بعد http:// رو به اول عبارت اضافه کنید تا حتی زمانی که کاربر آدرس رو کامل وارد نمیکنه همه URLها یک دست و درست بشند.

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *