Re: [請益] 想要知道有幾個user在線上
※ 引述《sonysky (For No Reason)》之銘言:
: 請問有什麼方法可以做到
: 1.知道現在有幾個user連到網站
: 2.知道現在有幾個登入的user
: 是否有某種$_SESSION可以用呢?
: 謝謝
可以參考一下我的寫法,用db去記錄
不過我是php+mssql 所以語法你可能要改一下
// 記錄目前線上人數 @C
function online(){
//刪除非今天的資料
$sql="DELETE FROM [online] WHERE DATEDIFF(day,[itime],GETDATE()) !='0'";
$rs = @mssql_query($sql);
$ip=$_SERVER['REMOTE_ADDR'];
//檢查是否有ip資料
$sql="SELECT * FROM [online] WHERE [ip] ='".$ip."'";
$rs=@mssql_query($sql);
if (mssql_num_rows($rs)=='1'){
$sql="UPDATE [online] SET [itime]=GETDATE() WHERE [ip] ='".$ip."'";
}else{
$sql="INSERT INTO [online] ([ip],[itime]) VALUES ('".$ip."',GETDATE())";
}
$rs = @mssql_query($sql);
//取出小於 300 秒的ip數量(抓5分鐘內)
$sql="SELECT [ip] FROM [online] WHERE DATEDIFF(second,[itime],GETDATE())
< 300";
$rs = @mssql_query($sql);
$num = @mssql_num_rows($rs);
return $num;
}
DB部份
CREATE TABLE [dbo].[online](
[ip] [varchar](20) COLLATE Chinese_Taiwan_Stroke_CI_AS NOT NULL,
[itime] [datetime] NULL,
CONSTRAINT [PK_online] PRIMARY KEY CLUSTERED
(
[ip] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
--
相信,用心就能夠看見。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.135.160.144
推
10/17 13:48, , 1F
10/17 13:48, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):
PHP 近期熱門文章
PTT數位生活區 即時熱門文章