怎样营造论坛虚拟会员在线?

怎样营造论坛虚拟会员在线?,第1张

论坛设置虚拟在线真实会员 FOR Discuz! 6.0

打开文件 index.php

查找代码:[code]$discuz_action = 1[/code]在下边加入:[code]//=========================================================================================

//虚拟在线会员+游客 START

$virtualhack = '1'// 1=开 0=关

if($virtualhack=='1') {

$mintime = 100 // 在线的最小值(秒)

$maxtime = 600 // 在线的最大值(秒)

$dis_time = 610 // 超过dis_time(秒)删除

$current_user = 10// 当前用户少于10,就执行虚拟用户

$min_user = 50 // 设定想增加多少会员的最小值

$max_user = 200 // 设定想增加多少会员的最大值

$min_guest = 10 // 设定想增加多少访客的最小值

$max_guest = 50 // 设定想增加多少访客的最大值

$start_uid = 3// 起始会员UID

$end_uid = 1000 // 结束会员UID

$action_arr = array("0","0","1","1","2","191","1","2","2","2","31","51")//设定虚拟用户允许动作

$current = time()

$current_different = $current - $dis_time

$db ->query("DELETE FROM {$tablepre}sessions WHERE ip1='000' AND lastactivity <='$current_different'")

$query = $db ->query("SELECT COUNT(*) FROM {$tablepre}sessions ")

$onlineuser = $db ->result($query, 0)

if($onlineuser <= $current_user ) {

$randguest = mt_rand($min_guest, $max_guest)//游客

$randuser = mt_rand($min_user, $max_user) //会员

$query = $db ->query("SELECT fid FROM {$tablepre}forums WHERE type = 'forum'")

while($fidresult = $db ->fetch_array($query)) {

$fidscope[] = $fidresult['fid']

}

// 随机插入在线会员

for($i = 1$i <= $randuser$i++) {

$randtime = mt_rand($mintime, $maxtime)

$onlinetime = $current - $randtime

$randaction = mt_rand(0, count($action_arr))

$onlineaction = $action_arr[$randaction]

$onlinefid = 0

if($onlineaction == '2') {

$randfid = mt_rand(0, count($fidscope))

$onlinefid = $fidscope[$randfid]

}

$online_sid = random(6)

$rand_uid = mt_rand($start_uid, $end_uid)

$query = $db ->query("SELECT `uid`,`username` FROM {$tablepre}members WHERE `uid` = '$rand_uid'")

while($row = $db ->fetch_array($query)){

$db ->query("INSERT INTO {$tablepre}sessions (sid,ip1, groupid, styleid, lastactivity, action, fid, uid, username )

VALUES ('$online_sid','000' ,'10', '1','$onlinetime','$onlineaction','$onlinefid','$row[uid]','$row[username]')")

}

}

// 随机插入在线游客

for($i = 1$i <= $randguest$i++) {

$randtime = mt_rand($mintime, $maxtime)

$onlinetime = $current - $randtime

$randaction = mt_rand(0,count($action_arr))

$onlineaction = $action_arr[$randaction]

$onlinefid = 0

if($onlineaction == '2') {

$randfid = mt_rand(0,count($fidscope))

$onlinefid = $fidscope[$randfid]

}

$online_sid = random(6)

$db ->query("INSERT INTO {$tablepre}sessions (sid,ip1, groupid, styleid, lastactivity, action, fid )

VALUES ('$online_sid','000' ,'7', '1','$onlinetime','$onlineaction','$onlinefid')")

}

}

}

//虚拟在线会员+游客 END[/code]后台更新缓存即可

星星海虚拟在线插件,可以模拟用户在线和游客在线.

绿色,不修改discuz原文件.

www.xxsea.com/thread-7961-1-1.html

当然.也可以直接修改文件,随意增加在线人数

方法:

1.找到文件:\source\module\forum\forum_index.php

2.查找代码:[code]$onlinenum = DB::result_first("SELECT count(*) FROM ".DB::table('common_session'))[/code]在下一行添加代码:[code]$onlinenum =$onlinenum*3[/code]在线人数会增加为原来的3倍.[code]$onlinenum =$onlinenum+1000[/code]在线人数会增加在原来的基础上增加1000.

3.ftp上传到网站同名目录,覆盖原文件即可.


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/217378.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-06
下一篇2023-04-06

发表评论

登录后才能评论

评论列表(0条)

    保存