View Single Post
ישן 26-10-06, 18:01   # 1
-roee-
חבר על
 
מיני פרופיל
תאריך הצטרפות: Nov 2005
מיקום: IL
הודעות: 864

-roee- לא מחובר  

מערכת "מחוברים עכשיו"

שלום



כתבתי קוד של מערכת שמציגה את המחוברים עכשיו אבל היא לא ממש עובדת...



המסד הוא כזה:

PHP קוד:
 CREATE TABLE `sessions` (
  `
sidvarchar(255NOT NULL default '',
  `
timevarchar(255NOT NULL default '',
  `
is_userint(11NOT NULL default '0',
  `
user_namevarchar(255NOT NULL default ''
ENGINE=MyISAM DEFAULT CHARSET=latin1




בתחילת הדף אני מייבא את הפונקציה update_session

ובסיום הדף אני מייבא את הפונקציה close_session



להלן הפונקציות:

PHP קוד:
 function update_sessions()
 {

  
session_start();
  
$s_id session_id();
  
$time time();
  
  if( 
$_SESSION['site_session'] == )
  {
   
mysql_query("update sessions set time='$time' where sid='$s_id'");
  } else {
   
$_SESSION['site_session'] = 1;
   if( ! isset(
$_COOKIE['site_user']) )
   {
    
$is_user 0;
   } else {
    
$is_user 1;
   }
   
$user_name $this->username(); // זה לא חשוב כרגע... 

   
mysql_query("insert into sessions (sid,time,is_user,user_name) values('$s_id','$time','$is_user','$user_name')");
  }

 }

 function 
close_sessions()
 {

  
$time time() - 30;
  
mysql_query("delete from sessions where time <= '$time'");

 } 


עכשיו כדי להציג את המשתמשים המחוברים אני עושה ככה:

PHP קוד:
$now_logged_in mysql_query("select * from sessions where is_user='1'");
while( 
$l mysql_query($now_logged_in) )
{
$user mysql_query("select * from users where user_name='{$l['user_name']}'"));
$l['user_id'] = $user['id'];
echo 
"- <a href=\"index.php?act=profile&amp;id={$l['user_id']}\">{$l['user_name']}</a>";



אבל לצערי זה לא מציג שום דבר.. יעני לא מציג שמשתמשים הם מחוברים למרות שהם כן.. וכל העניין עם העוגיות והסאשן נכונים ב100%.. אולי יש לי טעות בקוד שלא שמתי לב



מישהו יודע מה הבעיה?

אני אשמח לקבל תשובה בהקדם.



תודה ויום טוב
  Reply With Quote