PDA

View Full Version : فاصله زمانی در آژاکس



mohamadali1374
یک شنبه 06 بهمن 1392, 18:38 عصر
سلام
من با کد آژاکس چند تا دیتا رو تو دیتابیس ذخیره می کنم حالا میخوام ببین چه چوری میشه بین هر در خواست برای ذخیره یه فاصله زمانی بزارم؟:متفکر:
(منظورم اینکه وقتی که یه بار با کد آژاکس دستور ذخیره به سرور فرستاده شد مثلا تا 5 ثانیه بعد اجازه ندیم که بتونه دستور ذخیره رو به سرور ارسال کنه)
البته نمی خوام اینطور باشه که کلید ذخیره رو غیر فعال کنیم.
خواهش می کنم اگه ممکنه جواب بدید:قلب:

petter5211
یک شنبه 06 بهمن 1392, 18:57 عصر
سلام
شما میخواین درخواست ها به دیتابیس رو کم کنین یا واسه این که اطلاعات کامل ذخیره بشن دارین این کارو می کنین؟
اگه واسه ذخیره شدن اطلاعاته می تونین از فایلتون پاسخ return کنید.

mohamadali1374
یک شنبه 06 بهمن 1392, 20:42 عصر
نه متاسفانه من این مشکل رودارم که با یک بار زدن کلید ذخیره به جای اضافه شدن یک رکورد به جدول چندین رکورد با مقادیر یکسان به دیتابیس اضافه میشه حالا من میخوام یه فاصله زمانی بزارم شاید درست شه
این موضوع رو هم بگم که مشکل از سرور (کدهای php) نیست

Javidhb
سه شنبه 08 بهمن 1392, 23:51 عصر
نه متاسفانه من این مشکل رودارم که با یک بار زدن کلید ذخیره به جای اضافه شدن یک رکورد به جدول چندین رکورد با مقادیر یکسان به دیتابیس اضافه میشه حالا من میخوام یه فاصله زمانی بزارم شاید درست شه
این موضوع رو هم بگم که مشکل از سرور (کدهای php) نیست

اگه همه چیز درست باشه، نباید همچین مشکلی پیش بیاد... شما کدهای مربوط به ajax و php رو بزارید.

اما در مورد جواب سوالتون:

var lastClickTime; //ذخیره زمانی که روی دکمه کلیک شده

btn.onclick = function(){
var currentClickTime = new Date().getTime(); //زمان فعلی
var timeDifference = (currentClickTime - lastClickTime) / 1000; //اختلاف زمان بین آخرین کلیک و کلیک فعلی

if(timeDifference < 5){
return; //هیچ کاری نکنه
}else{
lastClickTime = currentClickTime; //آپدیت زمان آخرین کلیک
alert('yesss');
}
}


دمــو (http://jsfiddle.net/KM6nr/1/)