نمایش نتایج 1 تا 4 از 4

نام تاپیک: کار این کد چیست؟

  1. #1
    کاربر تازه وارد
    تاریخ عضویت
    شهریور 1390
    محل زندگی
    بوشهر
    پست
    34

    کار این کد چیست؟

    سلام
    کد زیر کارش چیه یعنی چیکار میکنه ؟
    میخوام توضیح کاملی بدین خط به خطش رو ...
        function safe($value){
    if( get_magic_quotes_gpc() ){
    $value = stripslashes( $value );
    }
    if( function_exists( "mysql_real_escape_string" ) ){
    $value = mysql_real_escape_string( $value );
    }else{
    $value = addslashes( $value );
    }
    return $value;
    }

    با تشکر

  2. #2

    نقل قول: کار این کد چیست؟

    سلام

    خط به خط این کد این است که:
    اول یک متغیر می گیره که ممکن است دارای نقل قول باشد که این نقل قول باعث ایجاد باگ در کدتان هنگام برقرار ارتباط با دیتابیس می شود،
    اولین شرط میاد چک می کنه که ببینه Magic Qoutes که یک روش قدیمی در PHP4 به قبل است فعال است یا خیر اگر بود که از همین تابع استفاده می کند اگر نبود از تابع جدیدتر mysql_real_escape_string استفاده می کند اما اول چک می کند ببیند این تابع فعال است یا نه چون این تابع از PHP4 به بعد اضافه شده است. در آخر اگر هیچ کدام وجود نداشت از تابع addslashes استفاده می کند که در اغلب PHP ها وجود دارد و عمومیت بیشتری دارد.

    با آرزوی موفقیت

  3. #3
    کاربر تازه وارد
    تاریخ عضویت
    شهریور 1390
    محل زندگی
    بوشهر
    پست
    34

    نقل قول: کار این کد چیست؟

    ممنون از شما دوست عزیز
    حالا میخوام بدونم این کد به چه دردی میخوره ؟ یعنی کجا کاربرد داره ؟

  4. #4

    نقل قول: کار این کد چیست؟

    با سلام، این کد برای مباحث امنیتی کاربرد داره و اصطلاحاً گیومه های نقل قول رو Escape میکنه یعنی اونها رو به کارکترهای بی خطر تبدیل میکنه تا از طریق اونها نشه کدهای مخرب رو روی دیتابیس اجرا کرد. درواقع تاحدودی امنیت اطلاعاتی که از کاربر دریافت میکنید رو با ارسال اونها به این تابع، بالاتر میبرین. مثلاً اگه کاربر توی فرم عبارت "this is "a text رو وارد کنه و شما این کد رو اجرا کنید:

    $text = safe($_POST['text']);

    متغیر text$ شما حاوی مقدار "\this is \"a text خواهد بود که تقریباً میشه گفت یک رشته بی خطر برای ذخیره توی دیتابیس هست.
    موفق باشید.

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •