this is my code
LOG IN PAGE:
<?
//if exist Session
if ($username)
{
$query="select * from $table where name='$username'";
$result=mysql_db_query($database, $query);
$getinfo=mysql_fetch_array($result);
$count=$getinfo["count"];
$tureuser=1;
}
//if no Session exists
elseif ($entername)
{
$query="select * from $table where name='$entername'";
$result=mysql_db_query($database, $query);
$getinfo=mysql_fetch_array($result);
$enterpw=md5($enterpw);
if ($enterpw!=$getinfo["pw"])
{
$tureuser=2;
}
else
{
$tureuser=1;
$username=$entername;
session_register("username");
$count=++$getinfo["count"];
$query="update $table set count='$count' where name='$username'";
mysql_db_query($database, $query);
}
}
//$table contains every user's information
//i have simplify the variables which were gained from forms and the database
?>
ONLINE TEST PAGE:
<meta http-equiv="Refresh" content="5; url=onlinehide.php">
<?
//get current time
$nowstamp=mktime();
//judge current user's rank
$masterquery="select master from $table where name='$username'";
$masterresult=mysql_db_query($database, $masterquery);
$rank=mysql_result($masterresult,0);
//get id, webmasters' id is 0
$query="select max(id) from $onlinetable";
$result=mysql_db_query($database, $query);
$currentid=mysql_result($result,id);
++$currentid;
if ($rank==1) $currentid=0;
//
$existquery="select from $onlinetable where name='$username'";
$existresult=mysql_db_query($database, $existquery);
$exist=mysql_num_rows($existresult);
//if current username exists, update last response time
if ($exist)
{
$query="update $onlinetable set time=$nowstamp where name='$username'";
mysql_db_query($database, $query);
}
//if not, insert
else
{
$query="insert into $onlinetable values ('$username',$nowstamp,$currentid,$rank)";
$result=mysql_db_query($database, $query);
}
//delete user in the online table
//interval>30 seconds
$deletequery="delete from $onlinetable where $nowstamp-time>30";
mysql_db_query($database, $deletequery);
//
$checkquery="select from $onlinetable where rank=2";
$checkresult=mysql_db_query($database, $checkquery);
$checknum=mysql_num_rows($checkresult);
//give speaking authority to the user who is the first in the online table
if (!$checknum)
{
$query="select min(id) from $onlinetable where rank=0";
$result=mysql_db_query($database, $query);
$grantid=mysql_result($result,id);
$grantquery="update $onlinetable set rank=2 where id=$grantid";
mysql_db_query($database, $grantquery);
}
//display current online state
$query="select * from $onlinetable order by id asc";
$result=mysql_db_query($database, $query);
$onlinenum=mysql_num_rows($result);
echo "now online",$onlinenum,"<br>";
for ($now=0;$now<$onlinenum;++$now)
{
$name=mysql_result($result,$now,name);
$rank=mysql_result($result,$now,rank);
if ($rank==1) $status="(webmaster)";
elseif ($rank==0) $status="(waiting)";
elseif ($rank==2) $status="(speaking)";
elseif ($rank==3) $status="(banned)";
echo $name,$status,"<br>";
}
?>
THANKS!