PDA

View Full Version : فهمیدن اینکه یه خبر بازشده



bps20590
دوشنبه 17 فروردین 1394, 06:08 صبح
با سلام
من دارم یه سایت خبری طراحی میکنم میخواستم بدونم چطور میشه قهمید یه کاربر یه خبر رابازکرده وداره میخونه و کی اونو میبنده

arenaw
دوشنبه 17 فروردین 1394, 09:00 صبح
یه table بسازید که ۵ تا فیلد داره: id و user_id و post_id و open_date و close_date

حالا توی صفحه خبر، یه کوئری اضافه کنید که یه رکورد به این table اضافه کنه با آیدی خبر، آیدی کاربر و تاریخ همون لحظه داخل open_date. بعدش آیدی این رکورد اضافه شده رو نگه دارید.

حالا واسه اینکه بفهمید چه موقع اون صفحه رو میبنده یا به عبارتی چقدر طول کشیده که اون خبر رو بخونه، میتونید از ایونت window.onbeforeunload جاوا اسکریپت کمک بگیرید.

به این صورت که یه صفحه php دیگه میسازید که یه ورودی id داشته باشه و هر بار که اجرا میشه، بیاد تاریخ همون لحظه رو برای close_date رکوردی که آیدیش وارد شده، ست کنه.

بعدش بیاید تو صفحه خبر توی اون ایونتی که بالا گفتم، با ایجکس صفحه php که تو خط قبل گفتم رو بهش رکوئست بفرستید.

reza_alie
دوشنبه 17 فروردین 1394, 13:45 عصر
می تونید یه جدول طراحی کنید و کد خبر و ipکاربر یا کد کاربر رود در آن ذخیره کنید



تشکر=رضایت

m.esmaeilzadeh
دوشنبه 17 فروردین 1394, 15:28 عصر
مدام با ajax چک کن !

Tarragon
دوشنبه 17 فروردین 1394, 15:51 عصر
@arena : ممکنه طرف جاوا اسکریپتش غیر فعال باشه یا همین جور پنجره رو باز بزاره و نتش قطع بشه بعد ببنده ! اینجوری تا چند وقت اون خبر باز می مونه.
@m.esmaeilzadeh : بار اضافی روی سرور می اندازه .
نظر من اینه که یه میانگین در نظر بگیرید مثلا ۵ دقیقه. از راهی که اقا arena گفتند برید فقط closeTime رو ۳۰۰ ثانیه بعد از openTime در نظر بگیرید.
خیلی از جاها ها دیدم اینجوری پیش می رن!