آموزش برنامه نویسی · کد کرنر
تبلیغات
آموزش اعتبار سنجی در پی اچ پی

در این قسمت که قسمت آخر آموزش مقدماتی پی اچ پی هست به اعتبارسنجی داده ها میپردازیم.

آموزش اعتبار سنجی در پی اچ پی

با سلام خدمت برنامه نویسان عزیز
با قسمت آخر از سری مقدماتی برنامه نویسی پی اچ پی در خدمت شما هستم
در این قسمت به اعتبار سنجی میپردازیم
خب اول از همه بگم که اعتبار سنجی به چه کاری میاد:
به عنوان مثال توی html شما میتونید برای input های فرم تعریف کنید که ورودی به چه صورتی باشه مثلا ایمیل حتما باید ورودی شبیه ایمیل بگیره تا ارسال بشه و یک نمونه دیگه از اعتبار سنجی هم باز برای همون input فعال کردن حالت required هست خب این require توی پی اچ پی به چه صورت هست؟
توی پی اچ پی برای اینکه فرم خالی ارسال نشه از دستورهای isset و یا empty استفاده میشه به صورت زیر:


1- empty یا خالی:
در این حالت ورودی چک میشه و در صورتی که مقدار گرفته باشه عمل میکنه، به مثال زیر توجه کنید:
* نکته ای رو در اینجا عرض کنم که اگه فرم رو به صورت post ارسال کرده باشید باید از POST_$ استفاده کنید و در صورت ارسال با متد get باید ورودی را با GET_$ بگیرید.
در مثال زیر فیلد name از فرم به صورت post ارسال شده و میخوایم خالی بودنش رو چک کنیم.

$var = $_POST['name'];
if(!empty($var)){
        /* دستورات خالی نبودن */
}else{
        /* دستورات خالی بودن */
}


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

$var = trim($_POST['name']);

2- isset یا تنظیم شده:
این دستور هم تقریبا مثل دستور قبلی هست با این تفاوت که قبلی فقط واسه چک کردن خالی بودن مقدار متغییر بود ولی isset برای ارسال شده تحت هر شرایطی هستش مثلا میشه باهاش چک کرد آیا دکمه ارسال کلیک شده یا کاربر مستقیم وارد این صفحه شده.
به مثال زیر توجه کنید:
در این مثال چک میکنیم اگه دکمه ای با نام submit کلیک شده بود دستورات اعمال بشه و در غیر اینصورت برگرده به صفحه قبل:

if(isset($_POST['submit'])){
        /* دستورات */
}else{
        header('location: ادرس صفحه قبل');
}


دستور isset واقعا لازمه و بهتره توی همه فرم هایی که ارسال میکنید حتما قبلش isset رو انجام بدین.


برچسب ها: آموزش اعتبار سنجی در php, php validation, validate in php

دسته بندی : پی‌اچ‌پی

تاریخ : ۹۵/۰۷/۰۱

دیدگاه‌ها


برای ثبت دیدگاه باید وارد شوید.