sql server源码版在线用户作弊修改办法
sql server源码版在线用户作弊修改办法:
1。修改namespace Discuz.Data.SqlServer.DataProvider的函数CreateOnlineTable如下,重新编译。
public int CreateOnlineTable()
{
try
{
StringBuilder sb = new StringBuilder();
//将表重建修改为删除数据,此后再dnt_online表上建个删除触发器即可
sb.Append(" DELETE FROM dnt_online");
return DbHelper.ExecuteNonQuery(CommandType.Text, sb.Replace("dnt_", BaseConfigs.GetBaseConfig().Tableprefix).ToString());
}
catch
{
return -1;
}
}
2。在dnt_online表上创建删除触发器,执行以下脚本:
CREATE TRIGGER zxzb ON [dbo].[dnt_online]
FOR DELETE
AS
declare @ncs as int
select @ncs=0
while @ncs<=50 //修改此参数可改变在线人数
begin
INSERT INTO dnt_online
(userid, username, nickname, groupid, olimg, [action])
VALUES (- 1, '游客', '游客', 7, '<img src="images\groupicons\guest.gif" />', 1)
select @ncs=@ncs+1
end
如果你用编译版本的话就不行了。