飞飞世界论坛
标题:
在线玩家数(没有错误)
[打印本页]
作者:
admin
时间:
2016-1-10 03:45
标题:
在线玩家数(没有错误)
在过去,我已经看到了各种方法检查当前在线玩家人数,但我见过有一个致命的缺陷。根据服务器被关闭(或更确切地说,如果它崩溃)播放器的计数被搞砸了。下面是我在谈论一个:
. d+ q M8 Y7 B5 X/ i. e
代码:
4 f8 V6 V8 F% z. }3 A
- i" k1 {& O v
$mssql = mssql_query("SELECT * FROM [ACCOUNT_DBF].dbo.[ACCOUNT_TBL] WHERE isuse='J'");
2 m4 F9 O: Q) a1 V$ D3 o! a
echo mssql_num_rows($mssql);
8 L' D& b8 I8 @# p8 Z1 q# i
这里有一个更正确的代码,它会自动复位计数,每当世界上的服务器程序打开当前在线:
! J% ^% Q- W; d! Y
+ z" r% m: Z# B
代码:
4 X" l8 h4 x/ f1 Y5 C2 X7 V
$mssql = mssql_query("SELECT * FROM [CHARACTER_01_DBF].dbo.[CHARACTER_TBL] WHERE MultiServer!=0");
+ @2 U7 S" M! ?9 z3 J g$ q
echo mssql_num_rows($mssql);Credits to Sedrika for changing MultiServer=1 to Multiserver!=0
2 k, _4 i" d9 u$ D- ~! b9 z( C4 h( l
2 i1 u' m8 c# W4 U7 v" o5 O
Spikensbror的更快的方法:
; }" V* c0 h; V, I, Y4 @+ o/ s1 N
邮编:
" y* J* r; U# E( `* K$ V7 u9 T) d
1 Y) Q; z1 q: @- v$ w3 S+ Z
$query = mssql_query('SELECT COUNT(*) as [CCU] FROM [CHARACTER_01_DBF].[dbo].[CHARACTER_TBL] WHERE [MultiServer] != 0;');
6 D( H! D: ^/ q' i/ ^- [/ f+ Y# O
$ccu = mssql_fetch_assoc($query);
+ \8 g5 w* j3 J) h1 U
$ccu = $ccu['CCU'];
% b9 o% {3 X+ k- W
# Q( Z$ _. H3 H: d9 T
3 I% r$ V9 d; b- L+ ~- _
' [# I$ m9 M- Q3 a0 o' f
2 P- [7 ~; W- T" n3 R
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2