روش جلوگیری از تایپ حروف غیر مجاز در ورودی های PHP

شنبه 24 شهریور 1397

جلوگیری از تایپ حروف غیر مجاز در ورودی های PHP امری ضروری و مهم است. جلوگیری از تایپ حروف غیر مجاز در ورودی های PHP کدهای مخرب را از بین می برد.

 روش جلوگیری از تایپ حروف غیر مجاز در ورودی های PHP

امروز قصد داریم در خصوص موضوعی جالب و کاربردی صحبت کنیم. موضوعی که تمرکز اصلی مان بر روی آن است جلوگیری از تایپ حروف غیر مجاز در ورودی های PHP است. حال سوال پیش می آید که منظور از جلوگیری از تایپ حروف غیر مجاز در ورودی های PHP چیست؟ در واقع قرار است از چه مسأله ای جلوگیری شود و به چه درد می خورد؟ در این مقاله در ابتدا مزایای جلوگیری از تایپ حروف غیر مجاز در ورودی های PHP را بررسی می کنیم، سپس مشخص می سازیم که حروف غیر مجاز چیست و در نهایت نیز یک سری ترفندهای ناب در این زمینه ارائه خواهید داد.

دلیل جلوگیری از تایپ حروف غیر مجاز در ورودی های PHP

اجازه دهید برای اینکه پایبند این مطلب شوید این موضوع را با یک مثال ساده پیش ببریم. فرض می کنیم که شما با زبان php یک فرم ثبت نام طراحی کرده اید. می تواند هر فرم ثبت نامی باشد!

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

درست حدس زدید! در واقع هدف اصلی به این صورت است که Input مقاوم شود تا امکان ارسال کدهای بیهوده به سمت ما به حداقل برسد. چطور چنین چیزی ممکن است؟ با ما همراه باشید.

روش جلوگیری از تایپ حروف غیر مجاز در ورودی های PHP

یکی از روش هایی که برای جلوگیری از تایپ حروف غیر مجاز در ورودی ها PHP دیده می شود استفاده از تابع فانکشن است که البته به زبان صحیح تر function گفته می شود. می دانیم که این تابع باید با یک المان همراه باشد که بهترین المان برای جلوگیری از تایپ حروف غیر مجاز در ورودی ها PHP، ckeckStirng است. همانطور که از اسمش پیداست ابزاری که قرار است string را چک کند. بسیار ساده است. در واقع شما باید یک شرط اعمال کنید به طوری که در شرط وارد شده به طور دقیق مشخص نمایید که کدام یک از حروف ، عدد و نشانه از سوی شما قابل قبول است و به طور مستقیم در شرط موارد مورد نظر را اعلام نمایید به این ترتیب در صورتی که شرط صحیح باشد فرم کاربر ارسال می شود و در صورتی که او شیطنت کرده و ورودی را اشتباه وارد نماید نمی تواند کار از پیش ببرد. قطعاً الان پیشنهادتان این است که یک خط کد بنویسم تا بتوانیم این تابع را بهتر بشناسیم، پیشنهاد خوبی است بخش بعد را دنبال کنید.

مثال کدنویسی جلوگیری از تایپ حروف غیر مجاز در ورودی های PHP

می دانیم کدنویسی تئوری نیست! هر چقدر هم توضیح داده شود تا دست به کد نزنید چیزی نصیبتان نمی شود بنابراین به سادگی می رویم سر اصل مطلب و یک قطعه کد بسیار تمیز و استاندارد را ارائه می دهیم تا بتوانید روش آسان جلوگیری از تایپ حروف غیر مجاز در ورودی های PHP را اعمال کنید.

در قطعه کد زیر از یک ورودی استفاده کرده ایم و نام آن را input قرار دادیم، همان بخشی که داخل پرانتز قرار دارد و با $ مشخص شده است، این نام به دلخواه است و می تواند هرچه دوست دارید باشد. حال ابزار قدرتمند و ناجی if به کمکمان می آید. شرط را شروع می کنیم و هر آنچه که از دید ما ورودی قابل قبولی است را مشخص می کنیم، در نظر داشته باشید که همیشه ورودی ها را باید پشت هم بنویسیم. ( نوشته های حروف فارسی را عمداً به این شکل قرار دادیم، هدفمان این است که حروف فارسی هم برای ورودی قابل قبول است ).

function checkString($input){

 if (preg_match('/^[a-zA-Z0-9-آابپتثجچحخدذرزژسشصضطظعغفق  کگلمنوهی]+$/', $input) != 0)

 return true;

 else

            return false;

}

قطعه کد نوشته شده را یک بار خودتان بنویسید و سعی کنید شرط ورودی را تغییر دهید، ( مهم نیست که منطقی باشد یا خیر) شما قرار است فقط یک تمرین عالی و هدفمند داشته باشید.

نکات طلایی جلوگیری از تایپ حروف غیر مجاز در ورودی های PHP

می دانیم که یک نکته مهم از قطعه کدی که در بخش قبل نوشتیم بدون توضیح مانده است! حواسمان است، نگران نباشید. ما پس از نوشتن if به سراغ یک پرانتز و پس از آن تابع preg_match رفتیم. به نظر شما علت این کار چیست؟

در واقع if به تنهایی برای این بخش دردی دوا نمی کند و باید از یک ابزار قدرتمند تر و به نوعی تخصصی تر کمک گرفت. این تابع وظیفه محدودسازی دارد و نشان می دهد که ورودی باید حتما از بین نوشته های داخل پرانتز پس از تابع باشد و در غیر این صورت کاربر ناکام می ماند.

جمع بندی

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

برنامه نویسان

نویسنده 3355 مقاله در برنامه نویسان
  • PHP
  • 3k بازدید
  • 0 تشکر

کاربرانی که از نویسنده این مقاله تشکر کرده اند

تاکنون هیچ کاربری از این پست تشکر نکرده است

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید