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

نام تاپیک: مشکل عجیب در هنگام Refresh کردن

  1. #1
    کاربر دائمی آواتار mohsen99
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    Microsoft
    پست
    144

    مشکل عجیب در هنگام Refresh کردن

    مدتی قبل با استفاده از Asp.Net یک سایت تهیه می کردم
    در یکی از صفحات که مخصوص ورود اطلاعات بود اگر کاربر بعد از زدن دکمه save صفحه را refresh می کرد یک بار دیگر تابع مربوط به دکمه save اجرا می شد و اطلاعات دوباره در DB ذخیره می شد .
    چند روز پیش به طور اتفاقی متوجه شدم دقیقا همین مشکل در سایت orkut هم وجود دارد :shock:
    به این صورت که اگر در قسمت اضافه کردن عکس (Album) یک عکس اصافه کنید و دکمه refresh را بزنید یک بار دیگر همان عکس اضافه می شود
    کسی علت و راه حل این مشکل را می دونه؟؟؟؟؟؟

  2. #2
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    ایران - تهران
    پست
    2,342
    در مورد کار اول و دوم، خیر! منطق صحیحی اعمال شده. اگر شما دوبار اطلاعات را بفرستید باید دوبار ثبت شود (ریفرش کردن در این حالت ، همان اطلاعات قبلی را به همراه دارد و یعنی شما دوباره عمدا درخواست ثبت داده اید ). ولی راه بهتر این است که با ست کردن مدت زمان کاشه کردن صفحه، این مورد را منتفی کنید. یعنی کاربر نه راه پس داشته باشد و نه راه پیش.... و به محض اینکار با یک پیغام خطای "صفحه اکسپایر شده" مواجه شود.

    یک نکته رو هم فراموش نکنید. باید در رخداد load شدن صفحه چک کنید که آیا postBack‌ است یانه؟ این مورد خصوصا در هنگام *ادیت کردن* خودنمایی می کند و اگر این مورد چک نشود شاید نصف روز وقت شما به دیباگ کردن برنامه ای که چیزی ثبت نمی کند! ، تلف می شود...

  3. #3
    کاربر دائمی آواتار mohsen99
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    Microsoft
    پست
    144
    به نظر من منطقا با refresh کردن فقط باید تابع Page_Load اجرا شود
    اما تابع مربوط به دکمه save نیز اجرا می شود

  4. #4
    با سلام
    به نظر من منطقا با refresh کردن فقط باید تابع Page_Load اجرا شود
    خیر٬
    چون صفحه(به همراه تمام محتویاتی که به سمت سرور postback میشود!)کاشه(cache) میگردد! پس منطقی این است که با (refresh)کردن صفحه قبل از به سر آمدن مدت زمان کش(کاشه) شدن! دوباره همان محتویات قبلی به سرور فرستاده شود!(به همراه تمامی دستورات و تغییراتی که باید اعمال شوند!) و فکر میکنم که علت نمایش اون پیغام مشهور هنگام refresh کردن صفحات aspx نیز همین باشه.
    در هر صورت...
    موفق باشین.

  5. #5
    با سلامی دوباره
    راستی فکر کنم برای اجرای صفحه بدون در نظر گرفتن کاشه(cache) باید : ctrl + F5 رو به کار برد!
    موفق باشین.

تاپیک های مشابه

  1. refresh صفحه و دردسرهای آن
    نوشته شده توسط shahramasp در بخش ASP.NET Web Forms
    پاسخ: 5
    آخرین پست: دوشنبه 26 تیر 1391, 12:20 عصر
  2. مشکل Refresh تصویر...
    نوشته شده توسط aloneman2005 در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 4
    آخرین پست: پنج شنبه 27 اردیبهشت 1386, 11:05 صبح
  3. refresh کردن یک رکورد
    نوشته شده توسط MNosouhi در بخش برنامه نویسی در Delphi
    پاسخ: 5
    آخرین پست: شنبه 16 دی 1385, 10:00 صبح
  4. refresh کردن صفحه نمایش
    نوشته شده توسط ARA در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 0
    آخرین پست: دوشنبه 17 مهر 1385, 10:01 صبح
  5. مشکل refresh صفحه و کش شدن اطلاعات در سرویس دهنده اینترنت
    نوشته شده توسط Ehsan Rafsanjani در بخش ASP.NET Web Forms
    پاسخ: 5
    آخرین پست: جمعه 25 فروردین 1385, 14:14 عصر

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

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