/
  • چگونگی چک کردن json در سرور

  • ارسال پاسخ   امتیاز موضوع:
    • 0 رأی - میانگین امیتازات: 0
    • 1
    • 2
    • 3
    • 4
    • 5

    حالت موضوعی | حالت خطی چگونگی چک کردن json در سرور
    نویسنده پیام
    ImanAzadi آفلاین
    عضو
    ***

    ارسال‌ها: 246
    تاریخ عضویت: ۱۳۹۲ اسفند ۲
    اعتبار: 0
    تشکرها : 36
    ( 9 تشکر در 9 ارسال )
    ارسال: #1
    چگونگی چک کردن json در سرور
    سلام
    دوستان فرض کنید یک صفحه داریم شامل یکسری ورودی
    که ورودی های توسط کاربر به صفحه اضافه میشن(توسط جاوا اسکریپت و بدون ارسال فرم )
    آیتم ها به شکل زیر در صفحه اضافه میشه

    کد:
    <div class="row">
    <input type="hidden" name="mat[]" value="monitor">
    <input type="hidden" name="mat_flag[]" value="true">
    <input type="hidden" name="mat_type[]" value="lg">
    <input type="hidden" name="mat_tag[]" value="A00B8">
    <input type="hidden" name="mat_QTY[]" value="3">
    </div>

    <div class="row">
    <input type="hidden" name="mat[]" value="monitor">
    <input type="hidden" name="mat_flag[]" value="false">
    <input type="hidden" name="mat_type[]" value="lg">
    <input type="hidden" name="mat_tag[]" value="CD028">
    <input type="hidden" name="mat_QTY[]" value="5">
    </div>

    <div class="row">
    <input type="hidden" name="mat[]" value="cpu">
    <input type="hidden" name="mat_flag[]" value="false">
    <input type="hidden" name="mat_type[]" value="corei5">
    <input type="hidden" name="mat_tag[]" value="DF980">
    <input type="hidden" name="mat_QTY[]" value="7">
    </div>

    <div class="row">
    <input type="hidden" name="mat[]" value="cpu">
    <input type="hidden" name="mat_flag[]" value="false">
    <input type="hidden" name="mat_type[]" value="corei3">
    <input type="hidden" name="mat_tag[]" value="GH580">
    <input type="hidden" name="mat_QTY[]" value="2">
    </div>

    <div class="row">
    <input type="hidden" name="mat[]" value="ram">
    <input type="hidden" name="mat_flag[]" value="true">
    <input type="hidden" name="mat_type[]" value="ddr3">
    <input type="hidden" name="mat_tag[]" value="RO180">
    <input type="hidden" name="mat_QTY[]" value="9">
    </div>

    <div class="row">
    <input type="hidden" name="mat[]" value="ram">
    <input type="hidden" name="mat_flag[]" value="true">
    <input type="hidden" name="mat_type[]" value="ddr5">
    <input type="hidden" name="mat_tag[]" value="WQ280">
    <input type="hidden" name="mat_QTY[]" value="4">
    </div>

    و پس از تکمیل نهایی با فشردن کلید باتن تمامی اطلاعات به صورت json در اومد و توسط آژاکس به سرور ارسال میشن



    کد:
    { monitor : [
    {'mat_flag': true , 'mat_type' : 'lg' , 'mat_tag' : 'A00B8' , 'mat_QTY' : 3 } ,
    {'mat_flag': false , 'mat_type' : 'lg' , 'mat_tag' : 'CD028' , 'mat_QTY' : 5 }
    ] ,
    cpu : [
    {'mat_flag': false , 'mat_type' : 'corei5' , 'mat_tag' : 'DF980' , 'mat_QTY' : 7 } ,
    {'mat_flag': false , 'mat_type' : 'corei3' , 'mat_tag' : 'GH580' , 'mat_QTY' : 2 }
    ],
    ram : [
    {'mat_flag': false , 'mat_type' : 'ddr3' , 'mat_tag' : 'GH580' , 'mat_QTY' : 4 } ,
    {'mat_flag': false , 'mat_type' : 'ddr5' , 'mat_tag' : 'WQ280' , 'mat_QTY' : 9 }
    ]
    }


    در سمت سرور پارامتر json ، دیکد میشه (json_decode()) و به آرایه تبدیل میشه

    حالا سوالم اینه اگر یک کاربر خرابکار بیاد و فرمت json ارسالی رو بهم بریزه و ارسال کنه چکار باید کرد ؟؟؟؟
    مثلا بیاد کلید mat_tag رو به mat_del تبدیل کنه و سپس ارسال کنه

    آیا باید تمام کلید ها رو در سمت سرور چک کرد ؟؟؟؟(طریقه چک کردن پیشنهادیتون رو بگید)
    ۱۳۹۵ ارديبهشت ۱ ۰۴:۵۵ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    Reza آفلاین
    رضا شیخله
    *****

    ارسال‌ها: 3,025
    تاریخ عضویت: ۱۳۹۰ آبان ۱۶
    اعتبار: 133
    تشکرها : 2724
    ( 2716 تشکر در 1692 ارسال )
    ارسال: #2
    RE: چگونگی چک کردن json در سرور
    نقل قول: آیا باید تمام کلید ها رو در سمت سرور چک کرد ؟؟؟؟(طریقه چک کردن پیشنهادیتون رو بگید)
    بله ، لیست سفید بذار
    کلید هایی که اجازه دارن رو فقط اجازه بده بیاد
    مقدارشم پالایش کن که یوقت مشکلی برات ایجاد نکنه
    __________________________________________________________________________
    -- - RezaWorkShop.ir - blog.RezaOnline.net
    ۱۳۹۵ ارديبهشت ۱ ۰۵:۲۳ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    ImanAzadi آفلاین
    عضو
    ***

    ارسال‌ها: 246
    تاریخ عضویت: ۱۳۹۲ اسفند ۲
    اعتبار: 0
    تشکرها : 36
    ( 9 تشکر در 9 ارسال )
    ارسال: #3
    RE: چگونگی چک کردن json در سرور
    (۱۳۹۵ ارديبهشت ۱ ۰۵:۲۳ عصر)Reza نوشته شده توسط:  
    نقل قول: آیا باید تمام کلید ها رو در سمت سرور چک کرد ؟؟؟؟(طریقه چک کردن پیشنهادیتون رو بگید)
    بله ، لیست سفید بذار
    کلید هایی که اجازه دارن رو فقط اجازه بده بیاد
    مقدارشم پالایش کن که یوقت مشکلی برات ایجاد نکنه

    میشه لطفا بیشتر توضیح بدی
    ۱۳۹۵ ارديبهشت ۱ ۰۶:۰۶ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    Reza آفلاین
    رضا شیخله
    *****

    ارسال‌ها: 3,025
    تاریخ عضویت: ۱۳۹۰ آبان ۱۶
    اعتبار: 133
    تشکرها : 2724
    ( 2716 تشکر در 1692 ارسال )
    ارسال: #4
    RE: چگونگی چک کردن json در سرور
    کد PHP:
    $white_list = array('mat_flag','mat_type','mat','mat_tag','mat_QTY');

    $post = array();
    foreach(
    $white_list as $key)
        
    $post[$key] = strip_tags($_POST[$key]);
        
        
    print_r($post); 
    __________________________________________________________________________
    -- - RezaWorkShop.ir - blog.RezaOnline.net
    ۱۳۹۵ ارديبهشت ۲ ۱۲:۲۰ صبح
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    « قدیمی تر | تازه‌ تر »

    ارسال پاسخ
    پرش به انجمن:


    کاربرانِ درحال بازدید از این موضوع: 1 مهمان
    IranPHP.org | تماس با ما | بازگشت به بالا | بازگشت به محتوا | بایگانی | پیوند سایتی RSS