تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 5 از 5

نام تاپيک: مدیریت در نوشتن query در سی شارپ

  1. #1
    پروفشنال aliaghaaaaa's Avatar
    تاريخ عضويت
    Feb 2008
    محل سكونت
    فارس/آباده
    پست ها
    518

    14 مدیریت در نوشتن query در سی شارپ

    سلام.
    من کد زیر رو تو سی شارپ نوشتم. جواب هم میده. ولی اگر داده های ورودی رو اشتباه وارد کنیم، پیام خطای زیر رو میده.
    چکار کنیم که اگه داده اشتباه بود، error نده و بجاش به کاربر اعلام کنه که باید داده رو درست وارد کنه؟
    ممنون.
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    پیغام خطا:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    Last edited by aliaghaaaaa; 18-05-2010 at 12:02.

  2. #2
    اگه نباشه جاش خالی می مونه pezhmax's Avatar
    تاريخ عضويت
    May 2007
    محل سكونت
    رشت
    پست ها
    333

    پيش فرض

    باید فرم رو قبل از اجرای query ارزیابی کنی(Validation). با regular expression تقریبا همه نوع validation ای رو میشه انجام داد.
    در ضمن این کدی که نوشت مثل آب خوردن inject میشه. تو وب باشه ملت سه سوت دیتابیس رو هوا میدن. حتما از sqlparameter استفاده کن. خود دات نت sql injection رو فیلتر میکنه.

  3. #3
    پروفشنال aliaghaaaaa's Avatar
    تاريخ عضويت
    Feb 2008
    محل سكونت
    فارس/آباده
    پست ها
    518

    پيش فرض

    سلام.
    ممنون از لطفت ولی:
    1- چطور ارزیابی کنم؟
    2- regular expression چیه؟
    3- inject یعنی چی؟
    4- بازم ممنون.

  4. #4
    اگه نباشه جاش خالی می مونه pezhmax's Avatar
    تاريخ عضويت
    May 2007
    محل سكونت
    رشت
    پست ها
    333

    پيش فرض

    1-ارزیابی کردن یک فرم یعنی کنترل ورودیهایی که توسط کاربر وارد میشوند و معمولا از طریق کنترلهای موجود در فرم به برنامه منتقل می شوند. این ورودیها باید از لحاظ نوع داده ای و طول داده با پایگاه داده مطابقت داده شوند و در صورت عدم وجود تطابق باید از اجرای عملیات درج یا اصلاح اطلاعات جلوگیری شده و پیامهای مناسبی به کاربر داده شود.

    2- regular rxpression در واقع یک قاعده مبتنی بر رشته است که توسط بسیاری از زبانهای رایج امروزی پشتیبانی می شود. و توسط آن یک رشته ورودی را با یک الگوی خاص مطابقت می دهند. به عنوان مثال اگر بخواهیم کاربر یک شماره تلفن تهران را وارد کند می دانیم باید یک رشته شامل فقط عدد وارد کند و نیز شماره اول آن نباید شامل 0 یا یک باشد و در ضمن حتما باید 8 رقم باشد. برای اینکار یک الگو مانند ([9-0][9-0][9-0][9-0][9-0][9-0][9-0][9-2]) ایجاد کرده و با استفاده از کلاس RegEX موجود در دات نت آن را ارزیابی می کنیم. برای اطلاعات بیشتر کافی است این کلاس را در MSDN مطالعه نموه و یا برای اطلاعات بیشتر به فصل پانزدهم کتاب "چگونه با C# برنامه نویسی کنیم" ترجمه پروین صفاحی مراجعه نمایید.

    3-sql injection تکنیکی است که توسط هکرها برای نفوذ به دیتا بیس سیستم از طریق فرمهای ورود اطلاعات استفاده می شود. به عنوان مثال query شما بعد از ورود کاربر به شکل زیر خواهد بود:

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    حالا اگر کاربر در تکست باکس پسورد به جای عبارت pass عبارت زیر را وارد کند :
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    query شما به این صورت خواهد بود :
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    در این صورت query شما به سه عبارت زیر تجزیه می شود :

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

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

    نتیجه عبارت دوم : دیگر جدول forooshande وجود ندارد.

  5. این کاربر از pezhmax بخاطر این مطلب مفید تشکر کرده است


  6. #5
    پروفشنال aliaghaaaaa's Avatar
    تاريخ عضويت
    Feb 2008
    محل سكونت
    فارس/آباده
    پست ها
    518

    پيش فرض

    سلام.
    بسیار ممنون از لطف شما و جواب کاملی که دادید.

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •