飞飞世界论坛
标题:
在线玩家数(没有错误)
[打印本页]
作者:
admin
时间:
2016-1-10 03:45
标题:
在线玩家数(没有错误)
在过去,我已经看到了各种方法检查当前在线玩家人数,但我见过有一个致命的缺陷。根据服务器被关闭(或更确切地说,如果它崩溃)播放器的计数被搞砸了。下面是我在谈论一个:
, G. b, t7 }$ |6 K; `5 E
代码:
/ U+ T( V1 d7 K1 W
( i" @' p: v! `" Q2 ]
$mssql = mssql_query("SELECT * FROM [ACCOUNT_DBF].dbo.[ACCOUNT_TBL] WHERE isuse='J'");
" n+ ?8 ]" E0 K- M8 K- i
echo mssql_num_rows($mssql);
5 z7 d0 _3 X8 p' X
这里有一个更正确的代码,它会自动复位计数,每当世界上的服务器程序打开当前在线:
8 G& D0 ]$ h' ^) D* x4 q% f
8 R* z7 P; W4 K' o4 n
代码:
, |% b B+ i: [+ Q" J
$mssql = mssql_query("SELECT * FROM [CHARACTER_01_DBF].dbo.[CHARACTER_TBL] WHERE MultiServer!=0");
- ^0 m& c/ K5 m* g
echo mssql_num_rows($mssql);Credits to Sedrika for changing MultiServer=1 to Multiserver!=0
{, o5 r; l# F$ @2 e2 w
% \! ?' J" `3 I; {1 m9 ~! u; f7 l
Spikensbror的更快的方法:
& s" C" |4 C4 P+ A
邮编:
4 c& |4 G. O4 v' z6 M
- H! _; q J& E) @0 X( M
$query = mssql_query('SELECT COUNT(*) as [CCU] FROM [CHARACTER_01_DBF].[dbo].[CHARACTER_TBL] WHERE [MultiServer] != 0;');
/ {7 k: {7 w7 y# b" t; `' K
$ccu = mssql_fetch_assoc($query);
' X7 l: `* m6 u
$ccu = $ccu['CCU'];
# h% `% q) ^* u9 H
' W, m# v' K: U' }% `3 v5 u7 T
% n' ]8 t6 i& ~: Q% V' g& G) |
: i9 p. P3 w3 [) i* c; h
* g0 I8 t4 ]+ V8 ]" d6 }
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2