function checkOnline($userid,$tempid=null)
{
$conn = connect();
//すべてのユーザー向け
//まずオンラインに設定します
$stmt = "UPDATE ".DB_NAME.".USER SET は
$result = query($stmt,$conn);
//info($stmt);
//現在のユーザーが訪問者の場合
if ($tempid != null)
{
$stmt = "SELECT TempID FROM " .Db_name. "Tempuseer Where
Tempid =". $ Tempid;
$ Result = Query ($ STMT, $ CONN);
// 情報 ($ STMT);
// = fetch_array($result))
{
$stmt = "UPDATE ".DB_NAME.".TEMPUSER SET
RequestTime='".getCurrentTime()."' WHERE TempID=".$tempid;
$result = query ($ stmt,$conn); info($stmt);
//訪問者はオフラインです
else
{
$stmt = "INSERT INTO ".DB_NAME.".TEMPUSER
VALUES('".$tempid ."','".getCurrentTime(). "')";
$result = query($stmt,$conn);
//info($stmt)
}
}
//他のユーザーを表示
/ /通常のユーザー
$stmt = "UPDATE ". DB_NAME.".USER SET は
unix_timestamp(RequestTime) > ".ONLINE_DURATION." AND UserGroupID != ".GUEST;
$result = query($stmt,$conn) ; stmt,$conn ); conn);
}
//オンラインの人数をユーザーと訪問者に分けて取得します
function getOnlineNumber()
{
$olnum = array();
$stmt = " SELECT COUNT(UserID) FROM ". DB_NAME.".USER WHERE Is
UserGroupID != 4"; //4 はゲストのユーザー グループ ID です
//info ($stmt);
$result = query($stmt,$ conn); user'] = result($result,0,"COUNT(UserID)");
$stmt = "SELECT COUNT(TempID) FROM ".DB_NAME.".TEMPUSER"; result = query($stmt,$conn);
if ($row=fetch_array($result)) '];
disconnect($conn); //www.w3sky.com から
}
その中のconnect(), disconnect(), query(),fetch_array()関数数在dbmanager.inc.PHP中
dbmanager.inc.PHP
define("DB_NAME","databasename");
define("DB_USER","ユーザー");
define("DB_PASS","パス");
define("DB_HOST","localhost");
function connect()
{
//echo "ホストに接続中:".HOST."
";
$conn = mysql_connect(DB_HOST,DB_USER,DB_PASS);
mysql_select_db(DB_NAME);
/*
if ($conn)
{
echo "データベースに正常に接続しました。接続 ID:".$conn."
";
}
else
{
echo "データベースへの接続に失敗しました。
";
}
*/
return $conn;
}
function pconnect()
{
return mysql_pconnect(DB_HOST,DB_USER,DB_PASS);
}
function disconnect($conn)
{
$close = mysql_close($conn);
/*
if ($close)
echo "MySQL データベース 切断されました。
";
else
echo 「MySQL データベースの切断に失敗しました。もう一度お試しください。
」;
*/
}
function query($stmt,$conn)
{
return mysql_query($stmt,$conn); //from www.w3sky.com
}
function fetch_array($result)
{
return mysql_fetch_array($result);
}
function fetch_row($result)
{
return mysql_fetch_row($result);
}
function num_rows($result)
{
return mysql_num_rows($result);
}
function result($result,$row,$field)
{
return mysql_result($result,$row,$field);
}
rule层:
rl_online.PHP
function getOnline()
{
if ($userid == 2)
{
if (ses) sion_is_registered("tempuserid"))
{
checkOnline($userid,$tempuserid) ;
}
}
else
{
checkOnline($userid);
}
return getOnlineNumber();
}
ui层:
ui_online.PHP
$online_num = getOnline();
echo "在線人数,注册用户".$online_num['user']."人,游客".$online_num['guest']."人";
以上は、php网站培训を媒介し、php网站培训面の内容を含むphp网站在線人数论坡であり、PHP教程に興味のある友の助けとなることを望んでいます。