امیر مددی
تماس با من
پروفایل من
نویسنده (های) وبلاگ امیر مددی
آرشیو وبلاگ
      بازار آی تی (این وبلاگ آینه ای از وبلاگ اصلی من در بلاگر (itbazaar.blogspot.com) در زمینه برنامه نویسی تحت وب است که بدلیل مشکلات فیل‌ترینگ در پرشین بلاگ نیز کپی شده است.)
دهها قطعه کد کاربردی بسیار مفید در سایت css-tricks نویسنده: امیر مددی - ۱۳٩٠/٩/٢٢
دهها قطعه کد کاربری بسیار جالب در زمینه HTML ، CSS ، JQuery ، Javascript ، PHP ، WordPress و... در این صفحه وجود دارد. بسیار ساده ، کاربردی و مفید
http://css-tricks.com/snippets/
کلا سایت به قول معروف خفنی است این css-tricks ، همه صفحاتش آموزنده و کاربری و کاملا بروز است. در بین کدها این کد را پیدا کردم که یاد قدیما افتادم. "نوستالژی برنامه نویسی (:   "
<meta http-equiv="refresh" content="5;url=http://example.com/" />
فوروارد صفحه بعد از 5 ثانیه به مسیر دیگر
  نظرات ()
چگونه در یک فرم MVC مانع حملات از نوع CSRF شویم؟ نویسنده: امیر مددی - ۱۳٩٠/٩/۱۸
هنگامی که در MVC فرمی را برای عملیاتی مثل ذخیره سازی یا ویرایش به سرور ارسال می کنید، در صورتی که کاربر در فرم از تگهای Html یا کدهای JavaScript  استفاده کرده باشد ، کنترلر بصورت پیش فرض آن تگ یا کد را خطرناک تشخیص می دهد و خطای زیر را ارسال می کند :

A potentially dangerous Request.Form value was detected from the client

حتی اگر کد Html شما خطرناک هم نباشد ، باز هم این خطا داده می شود، مثلا در شکل زیر تنها یک تگ B وجود دارد که متن را توپر می کند ولی باز هم خطا صادر می شود : 

 

این خطا از لحاظ امنیتی به ما کمک می کند تا جلو کدهای احیانا مخربی را که هکرها وارد می کنند ، بگیریم ولی گاهی اوقات لازم است که ما کد Html را دریافت کنیم ، مثلا اگر شما می خواهید به کاربر اجازه درج محتویات یک صفحه خبر و یا ارسال یک ایمیل را بدهید که معمولا یک ویرایشگر متنی در اختیار کاربر قرار می گیرد که کد html تولید می کند

 برای حل این مشکل  ValidationInput  را برابر  false قرار می دهیم که باعث می شود اعتبار سنجی روی تگهای Html صورت نگیرد. در این حالت کنترلر بصورت زیر در می آید:

 

  [ValidateInput(false)]        
 public ActionResult NewEmail(FormCollection form(
         {
اما با اینکار عملا راه را برای حمله های امنیتی از نوع Cross Site Request Forgery باز کرده ایم . این حمله ها به این صورت انجام می شود که هکر با ارسال فرمی که خودش ساخته است و قرار دادن کدهایی در آن ،  باعث ربوده شدن اطلاعاتی مثل Session از کامپیوتر کاربر می شود .

برای پیشگیری از این نوع حملات شما باید یک token از نوع encrypted تولید می کند که تنها توسط کنترلر قابل اعتبار سنجی است . بنابراین شما در ابتدای فرم خود ،  آن token را بصورت زیر تولید می کنید  :
 @using (Html.BeginForm("NewEmail""Emails"FormMethod.Post))   
  {   
      @Html.AntiForgeryToken()
و سپس در کنترلر خود آن را با عبارت [ValidateAntiForgeryToken] بررسی می کنید تا مطمئن شوید که مقادیر این فرم توسط برنامه خود شما تولید شده است. 

  [ValidateAntiForgeryToken]
        [ValidateInput(false)]
        public ActionResult NewEmail(FormCollection form)
        {
  نظرات ()
آموزش MVC - قسمت نهم - WebGrid در 3 MVC نویسنده: امیر مددی - ۱۳٩٠/٩/۱٧
قسمت نهم از آموزش MVC را نیز در سایت 30Sharp قراردادم. امیدوارم مورد توجه علاقه مندان قرار بگیرد.
http://30sharp.com/article/17/343/12/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-mvc-%D9%82%D8%B3%D9%85%D8%AA-%D9%86%D9%87%D9%85-webgrid-%D8%AF%D8%B1-3-mvc.aspx
  نظرات ()
مطالب اخیر خطای Collation هنگام مقایسه دو فیلد متفاوت در MSSQL دهها قطعه کد کاربردی بسیار مفید در سایت css-tricks چگونه در یک فرم MVC مانع حملات از نوع CSRF شویم؟ آموزش MVC - قسمت نهم - WebGrid در 3 MVC ویژگی Name در عناصر Html هنوز مهم است. چگونه دکمه like را به سایت یا وبلاگ خود اضافه کنیم؟ افزودنیهای مرورگر کروم متد ()on. در JQuery 1.7 مشاهده صفحات طراحی شده در چند مرورگر بخش هفتم سری مقالات آموزش MVC (فارسی)
کلمات کلیدی وبلاگ mvc (۳) برنامه نویسی وب (۳) برنامه نویسی (٢) c# (٢) جاوااسکریپت (٢) html (۱) طراحی وب (۱) ajax (۱) css (۱) csrf (۱) mssql (۱) jquery (۱) لایک (۱) آی تی بازار (۱) mvc (۱) آموزش ++c در pluralsight (۱) ویرایشگر متنی (۱) جستجوی جدوال تحت وب با yui (۱) window resizer plugin (۱) آموزش jquery (۱) ابزار چارت (۱) highcharts (۱) collation (۱) جامعه برنامه نویسان افغانستان (۱) wovs default browser switcher (۱) افزودنیهای کرورگر کروم (۱) webgrid (۱) هک در mvc (۱) css-tricks (۱) collate (۱)
دوستان من مقالات آموزشی من MVC وبلاگ فنی من سیاره وردپرس فارسی .NET Tips (وحید نصیری) سایت آموزشی سی شارپ مهرداد کیانیان افشار محبی آرش آقاجانی مجتبی صحرایی خانه برنامه نویسان افغانستان مصطفی دیندار مقالات آموزشی برنامه نویسی رحمت رضایی ( ToString ) اخبار فناوری اطلاعات طراح قالب