PDA

View Full Version : قفل ردیف در زمان آپدیت!



moosavimaleki
پنج شنبه 19 فروردین 1395, 16:23 عصر
سلام
من با php کار میکنم
یه بخشی رو که چند نفر بهش دسترسی دارن و میتون بهش یه متنی اضافه کنن...
اگر نفر اول یه بخشی بخواد اضافه کنه من بایداول اون دیتا رو select کنم بعد بهش متن رو اضافه کنم(1) و بعد update کنم

خب اگه در زمانی که من دارم متن رو اضافه میکنم (قسمتی که با پرانتز مشخص کردم)یه نفر دیگه که دسترسی به همون قسمت داره بیاد و همین کار رو کنه و متن رو select کنه و بعد بروز کنه ! در فاثقثیواقع یکی از این بروز شدن ها به فنا میره


چی جور از زمان select تا ثبت آپدیت این ردیف رو از ویرایش شدن ببندم؟!؟ با select for update امتحان کردم اما فایده ای نداشت!!





توضویح بیشتر



Thered1=>select text from mail where mail_id=1 //جواب در متغیر ریخته شد=> $text
Thered2=>select text from mail where mail_id=1 //جواب در متغیر ریخته شد=> $text
Thered1=>UPDATE mail SET text=$text.$user_input WHERE mail_id=1
Thered2=>UPDATE mail SET text=$text.$user_input WHERE mail_id=1

با این اتفاق در واقع کاربری که کار هایش با Thered1 انجام میشد اصلا ثبت نشد!!!