PDA

View Full Version : سوال: تعداد افراد آنلاین



farshad_persia
شنبه 04 آبان 1387, 14:41 عصر
سلام دوستان گل
چند تا سوال کوچیک اما مهم داشتم
1- در مورد تعداد یوزر های لاگین کرده در سایت تنها چیزی که به ذهنم رسید این بود که یک جدول تو دیتابس بسازم که با لاگین یک یوزر در اون یک رکورد ثبت کنه مثلا :


<?php

// Some code to login and when session started
mysql_query("INSERT INTO `session` ('userid') values ('$userid')");

?>
اینجوری با شمردن تعداد رکوردها و همچنین بررسی userid معلوم میشد که چند یوزر و کدام یوزر ها در سایت لاگین کردند؟
مشکل : با بستن صفحه از طرف یوزر session هم بسته میشه و خوب اما اون رکورد همچنان در دیتابیس باقی میمونه ......
2 - این فقط برای افراد عضو هستش و افراد غریبه یا همون مهمان رو چه جوری و با چه حرکتی در دیتابیس ثبت کنم که بتونم تعداد آفراد آنلاین رو بشمرم ؟؟
3 - یک مشکل دیگه چه جوری میتونم یک کوکی درست کنم که یوزر در زمان ورود به سایت اتوماتیک لاگین بشه ( دقیقا شبیه به تیک که معمولا در کنار فیلدهای لاگین هست با عنوان Remember Me ...)
با تشکر و سپاس پیشاپیش از راهنمایی هاتون :چشمک:

zoghal
شنبه 04 آبان 1387, 23:55 عصر
2- شما برای اسکریپتون رو با سشن پیاده سازی کنید.
برای هر یوزر یک روکورد ایجاد کنید. و هر رکوست چکن کنید ببینید اون سشن وجود داره یا اکسپایر شده. البته برای سسشن هم باید تایم اکسپایر تعریف کنید.


3- با کوکی

as13851365
یک شنبه 05 آبان 1387, 08:51 صبح
برای به دست آوردن کاربران آنلاین اگر در سایت جستجو کنید به جواب می رسید ! ( خیلی جالب و کامل درباره اش توضیح داده شده )

درباره کوکی هم که باز اگر جستجو کنید به نتایج جالبی خواهید رسید !

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

Bahram0110
یک شنبه 05 آبان 1387, 11:36 صبح
به جز session id باید زمان ورود یا زمان آخرین بازدید رو ذخیره کنید.
بقیش راحته.

narsic
یک شنبه 05 آبان 1387, 14:09 عصر
با سلام
زمان رو به صورت timestamp در بانک ذخیره کن بعد د رهر بار مراجعه بررسی کن که چه رکوردهایی زمانشون بیش از چند دقیقه که باید به صورت ثانیه باشه هستش بعد اونا رو حذف کن و بعد تعداد رکوردهای موجود رو نمایش بده .
برای جدا کردن کاربراتم از IP اونا استفاده کن یعنی فقط جاهایی رو نمایش بده که IP ها با هم برابر نباشن .
موفق باشید