رفتن به مطلب

اعتبار سنجی داده های ورودی در php


lion

پست های پیشنهاد شده

مقدمه:

 

اعتبار سنجی داده های ورودی که کاربر یا برنامه در صفحات وب وارد می نمایند ، یکی از مهمترین مسائل در زمینه طراحی صفحات وب امن می باشد .

برای روشن شدن مسئله به چند مثال اشاره می کنم .

فرض کنید که شما یک فرم ثبت نام در سایت خود ایجاد کرده اید . کاربر در زمان ثبت نام باید یکسری اطلاعات خواسته شده را در فرم وارد نماید . مسلما اطلاعات ورودی باید با شرایط و معیارهای مورد نظر شما ، تطابق داشته باشد .

برای مثال نام ورودی کاربر بایستی حداکثر 15 کاراکتر باشد . یا مثلا رمز عبور در دو کادر به صورت یکسان بوده و یا در نهایت باید ایمیلی که توسط وی وارد می شود ،، فرمت یک ایمیل واقعی را داشته باشد و ... .

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

در این بخش قصد داریم تا شما را نحوه انجام این عملیات آشنا سازیم .

 

چه اطلاعاتی را باید اعتبار سنجی نمود :

 

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

در لیست زیر ، انواع داده های ورودی به یک صفحه وب را بررسی کرده ایم . عموما شما باید این اطلاعات را اعتبار سنجی نمایید :

 

داده های که کاربر در فرم های وب وارد می نماید .

کوکی هایی که مرورگر می فرستد .

داده های سرویس های وب .

نتایج جستجو در پایگاه داده های سرور ( Query Results ) .

 

معرفی تابع های اصلی در عملیات اعتبار سنجی در PHP :

 

در لیست زیر چهار تابع اصلی ، در عملیات اعتبار سنجی متغیر ها و کادر های ورود اطلاعات در PHP را به شما معرفی کرده ایم . این تابع ها دارای بیشترین کاربرد در عملیات اعتبار سنجی هستند . در ادامه به توضیح کامل این توابع خواهیم پرداخت :

 

تابع ( ) filter_var : این تابع یک متغیر را با یک فیلتر اعتبار سنج خاص ، اعتبار سنجی می کند .

تابع ( ) filter_var_array : این تابع آرایه ای از متغیرها را با یک یا چند فیلتر اعتبار سنج خاص ، اعتبار سنجی می کند .

تابع ( ) filter_input-Get : این تابع مقدار یک کادر دریافت داده را با یک فیلتر اعتبار سنج خاص ، اعتبار سنجی می کند .

تابع ( ) filter_input_array : این تابع مقدار چندین کادر دریافت داده را با یک یا چند فیلتر اعتبار سنج خاص ، اعتبار سنجی می کند .

 

یک مثال ساده و ابتدایی از اعتبار سنجی داده :

 

مثال : در مثال ساده زیر یک عملیات اعتبار سنجی ساده را انجام داده ایم . این مثال برای آشنایی کلی و ابتدایی شما با نحوه اعتبار سنجی داده در PHP است و در بخش های بعد ، مثال های کامل تری را به شما نشان خواهیم داد .

در این مثال ابتدا یک متغیر معمولی تعریف شده است . سپس توسط یک دستور با استفاده از تابع "FILTER_VALIDATE_INT" که یکی از تابع های اعتبار سنج پیش فرض در PHP است ، این مسئله بررسی شده است که آیا متغیر تعریف شده ، عدد است یا خیر . در صورت عدد بودن آن عبارت "Integer is valid" و در صورت عدد نبودن آن عبارت "Integer is not valid" در خروجی چاپ خواهد شد :

 

 

< ? php $int = 123;   if ( filter_var ( $int , FILTER_VALIDATE_INT ) )     {       echo ( " Integer is not valid " ) ;     }   else     {       echo ( " Integer is valid " ) ;     }?>

 

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر

مهمان
این موضوع برای عدم ارسال قفل گردیده است.
×
×
  • اضافه کردن...