PDA

View Full Version : مشکل بعد ار ثبت اطلاعات



arash_flag
یک شنبه 21 تیر 1394, 20:58 عصر
سلام دوستان من یک فرم ثبت نام دارم ک کاربر بعد از پر کردن اطلاعات و اعتبار سنجی روی دکمه ی ثبت کلیک میکنه و اطلاعات در بانک ذخیره میشود و کادرها خالی میشوند

مشکل اینجاست ک اگر کاربر دکمه f5 را بزند اطلاعات دوباره ذخیره میشود یهنی صفحه ارسال میشود چطوری جلوی این کار را بگیرم/

nahidmoh
یک شنبه 21 تیر 1394, 21:46 عصر
Response.Redirect(Request.Url.AbsoluteUri);

arash_flag
دوشنبه 22 تیر 1394, 11:40 صبح
دوست عزیز سلام
ابتدا بگم فک کنم این کد صفحه را یکبار رفرش میکنه . بدون اینکه من آدرس صفحه جاری رو بدم درسته؟
دوم من این کار رو با آدرس صفحه میکردم Response.Redirect (url()
اما به کاربر چه طوری بفهمونم که ثبت شده؟

notlikeothers
دوشنبه 22 تیر 1394, 12:48 عصر
سلام به نظر میرسه این یک باگ در دات نت باشه من خیلی سرچ کردم تنها دو راه وجود داره که صورت مساله رو پاک میکنه
1-بعد ثبت صفحه دردایرکت بشه به خودش
2-کلا دکمه f5و رفرش رو ببندی
در هر دو صورت مساله حل نمیشه

amir_T_2008
دوشنبه 22 تیر 1394, 13:50 عصر
از کپچا استفاده کنید که بار دوم که از f5 استفاده کرد ارور کپچا بده و ثبت نشه

notlikeothers
دوشنبه 22 تیر 1394, 15:49 عصر
از کپچا استفاده کنید که بار دوم که از f5 استفاده کرد ارور کپچا بده و ثبت نشه
به عنوان ادمین خواست دیتا insertکنه واسه خودش کپچا بزاره؟؟

amir_T_2008
سه شنبه 23 تیر 1394, 00:34 صبح
براي ادمين نگفتم چون ادمين مريض نيست كه بعد ثبت اطلاعات f5 بزنه و من براي مدير يك باتن ادامه ميذارم و ريدايرك ميكنم به همون صفحه .

notlikeothers
سه شنبه 23 تیر 1394, 10:52 صبح
براي ادمين نگفتم چون ادمين مريض نيست كه بعد ثبت اطلاعات f5 بزنه و من براي مدير يك باتن ادامه ميذارم و ريدايرك ميكنم به همون صفحه .
شما فرض کن ادمین یه ادم اماتور بود و f5زد مخصوصا با این سرعت اینترنت تو ایران این اتفاق زیاد پیش میاد بازم راه حل شما کپچا هستش؟؟
چون خودم دیدم دارم میگم

sajjadzarenejad
سه شنبه 23 تیر 1394, 14:23 عصر
می تونی فرم رو قبل از ثبت Validate کنی یعنی اول چک کنی ببینی رکوردی که وارد کرده صحت داره .اون چیزی که می خوایه . تکراری نیست. این جوری دوباره ثبت نمی شه.

با response.redirect هم به مشکل نمی خوری . می تونی موفقیت و عدم موفقیت در ثبت رو توی کوئری استرینگ بریزی و پس از redirect , بخونی و توی لیبل نمایش بدی

amir_T_2008
سه شنبه 23 تیر 1394, 14:56 عصر
شما فرض کن ادمین یه ادم اماتور بود و f5زد مخصوصا با این سرعت اینترنت تو ایران این اتفاق زیاد پیش میاد بازم راه حل شما کپچا هستش؟؟
چون خودم دیدم دارم میگم
نه گفتم كه دوست عزيز بعد از ثبت يك دكمه ادامه ميذارم و ريدايركت ميكنم. فعلا همين راه ها هست

xsbehx
سه شنبه 23 تیر 1394, 15:45 عصر
یا من سوال رو متوجه نشدم یا شما داری الکی مسئله رو سختش می کنی !؟
خوب وقتی داری Insert می کنی مگه چک نمی کنی که فیلدهات پر هستند یا خالی؟
اگر بله
خوب بعد از insert شما اگر فیلدهاتو خالی کنی دفعه بعد که کاربر f5 رو بزنه چون فیلدهات خالی شدن دیگه اطلاعاتی وارد نمی شه دیگه !

arash_flag
چهارشنبه 24 تیر 1394, 11:26 صبح
دوست عزیز وقت f5 میزنی دوباره فیلد ها پر میشن
مشکل اینجاست

arash_flag
چهارشنبه 24 تیر 1394, 11:27 صبح
یا من سوال رو متوجه نشدم یا شما داری الکی مسئله رو سختش می کنی !؟
خوب وقتی داری Insert می کنی مگه چک نمی کنی که فیلدهات پر هستند یا خالی؟
اگر بله
خوب بعد از insert شما اگر فیلدهاتو خالی کنی دفعه بعد که کاربر f5 رو بزنه چون فیلدهات خالی شدن دیگه اطلاعاتی وارد نمی شه دیگه !
دوست عزیز شما نفهمیدی
چونکه وقتی f5 میزنی فیلدها دوباره پر میشن

Davidd
چهارشنبه 24 تیر 1394, 12:48 عصر
سلام. با رفرش کردن صفحه دقیقا همون request قبلی دوباره فرستاده میشه . مثل اینه که دکمه ثبت با همون اطلاعات قبلی دوباره کلیک بشه. این یه باگ دات نت نیست.
یه راهش همون redirect کردن به همین صفحه هست. برای اینکه کاربر بفهمه ثبت شده یا نه همون طور که دوستمون گفت از کوئری استرینگ استفاده کن
می تونی موفقیت و عدم موفقیت در ثبت رو توی کوئری استرینگ بریزی و پس از redirect , بخونی و توی لیبل نمایش بدی

پیام حیاتی
چهارشنبه 24 تیر 1394, 14:16 عصر
سلام
تا حالا با همچین مشکلی روبرو نشدم ، مگر کدها در فرم لود هست که با رفرش دوباره ارسال شوند ، کدها در رویداد کلیک دکمه ثبت قرار دارند ربطی به رفرش صفحه ندارد.

mbasirati
پنج شنبه 25 تیر 1394, 13:55 عصر
از ای جکس استفاده کن این مشکل پیش نمیاد.

arash_flag
پنج شنبه 01 مرداد 1394, 11:26 صبح
سلام دوستان چگونه از کوئری استرینگ استفاده کنم
و بعد پیام رو چگونه نمایش بدم
لطفا مبتدی بگین چون من بلد نیستم
مرسی