限制同一ip的注册数量

博客介绍了在网站或游戏中实现同一IP注册数量限制的方法。给出了设置同IP一天最多注册50个的代码,还提供了检查每天实际情况的代码,经统计,相关接口没问题。

以前看在网站或游戏中有对同一ip注册数量上的限制,现在做来觉得挺容易实现,

代码如下:

/*
Disciption:
设置对同个IP注册数量限制,一天同IP最多注册50个
Designed By:
  whbo
Designed Time:
  2005-10-13
Modified By:

Modified Time:

Example:
declare @ResultCount int
exec @ResultCount=PrUserCenter_CheckIPRegNums '222.92.14.58'
print '@ResultCount='+convert(varchar(10),@ResultCount)
*/
CREATE Proc[PrUserCenter_CheckIPRegNums]
 @chvIPAddress varchar(15)
as
set nocount on
Declare @IPRegNums int
set @IPRegNums=0
select @IPRegNums=Count(*) from Alluser where [IPAddress]=@chvIPAddress and convert(varchar(10),RegisterTime)=convert(varchar(10),getdate())
return @IPRegNums


GO

同时写了段代码检查每天实际的情况,根据统计结果,上面的接口是没什么问题的.

/*
Name:统计当天同一IP注册的情况,同一IP同天限制注册50个号码以内
intput:@intCount    --要统计同ip注册数量大于@intCount的情况
*/
Declare @intCount int
set @intCount=50   --修改这里
SELECT CONVERT(varchar(10), RegisterTime) AS Expr1, IPAddress, COUNT(*)
      AS Nums
FROM AllUser
WHERE (RegisterTime > CONVERT(varchar(10), GETDATE()))
GROUP BY CONVERT(varchar(10), RegisterTime), IPAddress
HAVING (COUNT(*) >@intCount)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值