انجمن تعطیل می باشد.

از ایجاد تاپیک و پست های جدید خود داری نمایید.

لطفا این اطلاعیه را مطالعه بفرمایید.

اعتبار سنجی سفارشی برای فیلدهای متن ورودی

ارسال شده در: پرسش و پاسخ
  • tmediaa در: یکشنبه ۴ مرداد ۱۳۹۴ در ۱۲:۱۱ ب٫ظ #6228

    سلام
    من یه فرم دارم که میخوام تو اون فرم فیلدهای متن ورودی رو مطابق با regex اختصاصی اعتبار سنجی کنم
    میخواستم ببینم چطوری میشه این کار رو انجام داد
    البته من چندتا نمونه دیدم که با فیلتر gform_field_validation کد زده بودن اما کامل متوجه نشدم

  • tmediaa در: یکشنبه ۴ مرداد ۱۳۹۴ در ۱۱:۴۷ ب٫ظ #6247

    کسی اطلاعی از این مورد نداره ؟

  • حنان ابراهیمی ستوده
    حنان ابراهیمی ستوده در: دوشنبه ۵ مرداد ۱۳۹۴ در ۷:۳۶ ب٫ظ #6251

    سلام .
    اگه زیاد پیچیده نباشه اعتبارسنجی تون میتونید از قاب ها استفاده کنید :
    https://gravityforms.ir/678/gravityforms-mask-input/

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

    کد زیر رو ببینید :


    add_filter('gform_field_validation_2_5', 'gform_field_validation_gravityforms_dot_ir', 10, 4);
    function gform_field_validation_gravityforms_dot_ir($result, $value, $form, $field){
    // $value : مقدار فیلدی که کاربر وارد کرده
    // شما اینجا مقدار فیلد رو که تو مغتیر value هست رو اعتبار سنجی کنید .
    if ( اعتبار سنجی انجام شد و معتبر نبود ) {
    $result["is_valid"] = false;
    $result["message"] = __("کد وارد شده اشتباه است .", "Persian_Gravityforms_By_HANNANStd");
    return $result;
    }
    return $result;
    }

    بجای 2 آیدی فرم و بجای 5 آیدی اون فیلد رو بذارید . اعتبار سنجی رو انجام بدید و داخل if فقط وقتی خطا رخ داد پیام رو نمایش بده وگرنه مشکلی ایجاد نکنه .

  • tmediaa در: دوشنبه ۵ مرداد ۱۳۹۴ در ۷:۵۳ ب٫ظ #6256

    تو اینجا regex (کد اعتبار سنج) رو کجا باید بزاریم ؟

  • حنان ابراهیمی ستوده
    حنان ابراهیمی ستوده در: چهارشنبه ۷ مرداد ۱۳۹۴ در ۱۰:۰۲ ب٫ظ #6313

    دوست عزیز همونجا که کامنت گذاشتم شما روی متغیر $value اعتبار سنجی کنید . خب اعتبار سنجی شما 2 تا خروجی داره یا true هست یا false … که خروجی false رو داخل پرانتز if قرار بدید که اگه خروجی غلط بود یعنی false بود خطا بده وگرنه خطا نده .

شما برای پاسخ به این جستار باید وارد تارنما شوید.