Jump to content


Photo

1 logged in at a time


  • Please log in to reply
1 reply to this topic

#1 desithugg

desithugg
  • Members
  • PipPipPip
  • Advanced Member
  • 281 posts
  • LocationScarborough

Posted 01 September 2006 - 03:25 PM

Umm im having trouble logging in only 1 person at a time in one account i was thinking for like a week now and this is what i came up with
$stime=date("U")-0;
$ltime=date("U")-60;
$ipcheck = $_SERVER["REMOTE_ADDR"];
mysql_connect("localhost", $my_sql_password, $my_sql_username) or
   die("Could not connect: " . mysql_error());
mysql_select_db("osiris_thugg");

$result = mysql_query("SELECT time FROM online where username = '$user_currently_loged' && ip = '$ipcheck'");
if (!$result) {
   echo 'Could not run query: ' . mysql_error();
   exit;
}
$row = mysql_fetch_row($result);
$loggin = $row[0];
if($loggin == "")
{
mysql_query("INSERT INTO online 
(username, ip, time) VALUES ('$user_currently_loged','$ipcheck','$stime') ") 
or die(mysql_error());  
}
mysql_query("update online set time = '$stime' where username = '$user_currently_loged'") 
or die(mysql_error()); 
$result = mysql_query("SELECT count(time) FROM online where username = '$user_currently_loged' and time > '$ltime'");
if (!$result) {
   echo 'Could not run query: ' . mysql_error();
   exit;
}
$row = mysql_fetch_row($result);
$howmany = $row[0];
echo"There are more than 1 person(s) logged in this account at the moment";
include("bottom.php");
exit;
}

What this code basically does is checks if the ip,username combonation already exists if it does exist it updates the previous record(time) if not it inserts a new rows(username,ip,time) and than the last query checks how many unique ips have been active in that account in the past 60 seconds but the problem im having is its not only counting the ones active in the last 60 secs its counting all the ips that have logged in so people keep having the error where it says there are more than 1 person(s) are people logged in this account.


#2 desithugg

desithugg
  • Members
  • PipPipPip
  • Advanced Member
  • 281 posts
  • LocationScarborough

Posted 01 September 2006 - 03:27 PM

o.o nvm i just saw the problem
mysql_query("update online set time = '$stime' where username = '$user_currently_loged'") 
or die(mysql_error()); 

whats happening is it is updating all the ips that have logged in the account with the new time so thats why the error keeps coming up.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users