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

نام تاپیک: کم یا زیاد کردن اعتبار پولی کاربرها به چه صورت باید انجام بشه؟

  1. #1

    کم یا زیاد کردن اعتبار پولی کاربرها به چه صورت باید انجام بشه؟

    می خوام اعتبار پولی کاربرها رو توی وب سایت کم یا زیاد کنم، برای اینکار باید از تراکنش استفاده کرد ؟

  2. #2

    نقل قول: کم یا زیاد کردن اعتبار پولی کاربرها به چه صورت باید انجام بشه؟

    یعنی چی دقیقا میخوای چکار کنی اگه میخوی مثلا یک کاربری که 20000 تومن پول داره حالا مثلا یک جنس ازت خریده 15000 تومن بیاد و از اون مقدار اعتبار اول کم کنه راهش سادس اول مبلغ رو کم کن و حاصلش رو بجای مقدار 20000 بروز کن


    $c=$a-$b

  3. #3
    کاربر دائمی آواتار thacker
    تاریخ عضویت
    دی 1390
    محل زندگی
    اکباتان
    پست
    621

    نقل قول: کم یا زیاد کردن اعتبار پولی کاربرها به چه صورت باید انجام بشه؟

    در مثال زیر شما 1200 ( تومان یا ریال یا ... ) رو به حساب کاربری فردی با آیدی 1 می افزایید :

    $cash = 1200;
    $add_cash = mysql_query ("UPDATE `users` SET `cash` = cash+$cash WHERE `user_id` = '1'");

  4. #4

    نقل قول: کم یا زیاد کردن اعتبار پولی کاربرها به چه صورت باید انجام بشه؟

    این روشها یه مشکل داره و اونم اینکه اگر یه قسمت از نرم افزار بخواد به حساب کاربر پول واریز کنه و همزمان یه قسمت دیگه بخواد پول کم کنه احتمال محاسبات دچار اشتباه بشن، راه بهتر اینه که کوئری اول ردیف مورد نظر رو قفل کنه بعد کارهای مورد نیاز رو انجام بده اما نمی دونم چطور باید این کارو کرد!

  5. #5

    نقل قول: کم یا زیاد کردن اعتبار پولی کاربرها به چه صورت باید انجام بشه؟

    نقل قول نوشته شده توسط i-php-i مشاهده تاپیک
    این روشها یه مشکل داره و اونم اینکه اگر یه قسمت از نرم افزار بخواد به حساب کاربر پول واریز کنه و همزمان یه قسمت دیگه بخواد پول کم کنه احتمال محاسبات دچار اشتباه بشن، راه بهتر اینه که کوئری اول ردیف مورد نظر رو قفل کنه بعد کارهای مورد نیاز رو انجام بده اما نمی دونم چطور باید این کارو کرد!
    چی دچار مشکل بشه؟؟؟ این کار چنان سریع انجام میشه در کسری از صدم ثانیه که چنین اتفاقی نمی افته اگه تو ستی همچین کاری کنی به مام یاد بده از بی سوادی در بیایم

  6. #6
    کاربر دائمی
    تاریخ عضویت
    خرداد 1391
    محل زندگی
    تهران
    پست
    409

    نقل قول: کم یا زیاد کردن اعتبار پولی کاربرها به چه صورت باید انجام بشه؟

    باید وقتی میخای عملی رو فیلد پول انجام بدی اونو قفل کنی که اگه به طور اتفاقی عمل دیگه ایی قرار رو اون فیلد رخ بده منتظر این عمل بمونه .
    این اتفاق خیلی مهمه مخصوصا تو سایت های بزرگ ممکنه یه موقعیتی پیش بیاد که یه عمل همزمان روی یه فیلد مهم انجام بشه ولی با قفل کردن یا ترنزیشن جلوشو میگرن .
    وقتی قفل می کنید اگه درخواست دیگه ایی بیاد منتطر میمونه که قفل باز بشه .
    یه نمونه قفل کردن
    mysql_query("LOCK TABLES tablename WRITE|READ;");
    mysql_query("UNLOCK TABLES;");

  7. #7

    نقل قول: کم یا زیاد کردن اعتبار پولی کاربرها به چه صورت باید انجام بشه؟

    نقل قول نوشته شده توسط under22 مشاهده تاپیک
    باید وقتی میخای عملی رو فیلد پول انجام بدی اونو قفل کنی که اگه به طور اتفاقی عمل دیگه ایی قرار رو اون فیلد رخ بده منتظر این عمل بمونه .
    این اتفاق خیلی مهمه مخصوصا تو سایت های بزرگ ممکنه یه موقعیتی پیش بیاد که یه عمل همزمان روی یه فیلد مهم انجام بشه ولی با قفل کردن یا ترنزیشن جلوشو میگرن .
    وقتی قفل می کنید اگه درخواست دیگه ایی بیاد منتطر میمونه که قفل باز بشه .
    یه نمونه قفل کردن
    mysql_query("LOCK TABLES tablename WRITE|READ;");
    mysql_query("UNLOCK TABLES;");
    آخه چطور امکان داره همچین چیزی ؟ من که نمیفهمم که آخ7 چنین کاری چه لزومی داره

  8. #8
    کاربر دائمی
    تاریخ عضویت
    خرداد 1391
    محل زندگی
    تهران
    پست
    409

    نقل قول: کم یا زیاد کردن اعتبار پولی کاربرها به چه صورت باید انجام بشه؟

    نقل قول نوشته شده توسط hamidhassas مشاهده تاپیک
    آخه چطور امکان داره همچین چیزی ؟ من که نمیفهمم که آخ7 چنین کاری چه لزومی داره
    شما اگه مقداری فکر کنید متوجه می شید . همینطوری نیایید بگید چه لزومی داره اگه لزومی نداشت همچین چیزی رو اصلا نمیزاشتن معلومه شما حرفه ایی تا حالا کار نکردید .
    تمام سایت های واسط پرداخت از این روش استفاده می کنند مثل جها پی یا پی لاین یا ......
    تمام سایت های فروشگاهی از این روش استفاده می کنند مگه اینکه برنامه نویسی شون شخصی مثل شما باشه و در این مورد علم نداشته باشه .
    قفل و ترنزکشن فوق العاده پر کاربرد تو حوضه وب سایت ها هستن

  9. #9
    کاربر دائمی آواتار نیلوفر66
    تاریخ عضویت
    مرداد 1389
    محل زندگی
    خونه
    پست
    175

    نقل قول: کم یا زیاد کردن اعتبار پولی کاربرها به چه صورت باید انجام بشه؟

    حوضه :حوزه ‎;)‎

  10. #10
    کاربر دائمی
    تاریخ عضویت
    دی 1389
    محل زندگی
    اراک
    پست
    409

    نقل قول: کم یا زیاد کردن اعتبار پولی کاربرها به چه صورت باید انجام بشه؟

    شما باید از قفل ها (منظور کلیت عمل قفل هست) استفاده کنید به چند دلیل که مهمترینشون اینهاست

    1- داده ها هنگام عملیات توسط سایرین دستکاری نشه
    2- مطمئن بشید که کل عملیات با موفقیت انجام شده، و در غیر این صورت کل تغییرات به حالت قبل برگرده (مثلا پول کم بشه از کاربر ولی کالایی برای فروش وجو نداشته باشه)

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

  11. #11

    نقل قول: کم یا زیاد کردن اعتبار پولی کاربرها به چه صورت باید انجام بشه؟

    یه مثال از تراکنش مورد نیاز برای این کار می زنید؟

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

  1. زیاد کردن سرعت موس Mouse speed
    نوشته شده توسط Plus.Plus در بخش برنامه نویسی در 6 VB
    پاسخ: 8
    آخرین پست: چهارشنبه 01 شهریور 1391, 09:07 صبح
  2. کم و زیاد کردن سرعن پخش صدا از طریق دلفی!
    نوشته شده توسط yaas135 در بخش کامپوننت های سایر شرکت ها، و توسعه کامپوننت
    پاسخ: 13
    آخرین پست: یک شنبه 11 اسفند 1387, 11:12 صبح
  3. edit ی برای وارد کردن مقادیر پولی
    نوشته شده توسط ssmehizadeh در بخش برنامه نویسی در Delphi
    پاسخ: 3
    آخرین پست: چهارشنبه 27 اردیبهشت 1385, 20:57 عصر
  4. کم و زیاد کردن صدا
    نوشته شده توسط هانی هاشمی در بخش برنامه نویسی در 6 VB
    پاسخ: 4
    آخرین پست: شنبه 13 اسفند 1384, 22:50 عصر
  5. پاسخ: 1
    آخرین پست: چهارشنبه 06 خرداد 1383, 13:24 عصر

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

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