社区
基础编程
帖子详情
有个极度郁闷的问题。。大家帮我看看。
canyue1980
2010-07-23 10:42:48
我有一个程序实现这样一个功能,每个注册用户每天只能点击一次领取奖励。
但是呢,有的用户他网络比较卡,往往点一次,没有反映,然后就猛点猛点。。结果。。就被点了N次。。得到好多奖励啊。
流程是这样的 点击后,检查用户领取记录当天有没有领过,如果领过,就返回已领。如果没有,update用户资料,添加积分。insert用户领取记录。
...全文
171
20
打赏
收藏
有个极度郁闷的问题。。大家帮我看看。
我有一个程序实现这样一个功能,每个注册用户每天只能点击一次领取奖励。 但是呢,有的用户他网络比较卡,往往点一次,没有反映,然后就猛点猛点。。结果。。就被点了N次。。得到好多奖励啊。 流程是这样的 点击后,检查用户领取记录当天有没有领过,如果领过,就返回已领。如果没有,update用户资料,添加积分。insert用户领取记录。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
20 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
总哈哈
2010-07-23
打赏
举报
回复
JS加后台验证,这样很保险。
PIGer920
2010-07-23
打赏
举报
回复
程序判断上肯定有bug
Alfredknox
2010-07-23
打赏
举报
回复
最好还是用js验证,每次点击时都先把按钮变灰(即不可用),等执行完再变回来,这样应该可以得到保证了吧!希望能帮到你lz
江南昆虫
2010-07-23
打赏
举报
回复
应该是服务器端验证没做好吧...
amani11
2010-07-23
打赏
举报
回复
检查程序执行逻辑吧。
就算没锁表操作,
如果不是并发量非常大,常常出现,这种情况,不太正常
gumwzg
2010-07-23
打赏
举报
回复
网络有延迟 还是不行
直接用js把那个按钮变灰了
quzhongxiong
2010-07-23
打赏
举报
回复
把按钮变灰吧
number123456
2010-07-23
打赏
举报
回复
按理说无论他向服务器发送多少条请求,他也有个顺序,只要有其中一条执行了,期它的就应该是都不执行才对。
你可以用JS来做下效果
例如:
<input type="submit" name="领取" onclick="get(this)" >
<script>
function get(this){
// 先让他点一下就不能再点了,
this.disabled = true;
//然后用AJAX发送请求
ajax 代码
//如果返回成功了,那么把这个按钮给删除了,
//如果返回没成功,则把这个按钮再变成可用,并提示没成功
}
</script>
canyue1980
2010-07-23
打赏
举报
回复
这就是我的郁闷之处。。难道是我服务器配置问题。。。。这个理论上就算他多点了,那么也是前面点的先执行。。。是不是,后面点的判断过去就能识别出来他点过了,那么后面的就无效了,但是这个。。他好像同时执行了一样。
fancyivan
2010-07-23
打赏
举报
回复
怎么会呢,点第二次的时候,会判断用户已经领过了。
可以用js在前台做一下限定,在第一次点击后没有返回结果前,点再多也没用。
canyue1980
2010-07-23
打赏
举报
回复
嗯。。现在只能用Ajax等有返回结果后,按钮才变得可用。。。
试试。。不知道会不会产生这样的结果。同时在线一般在800左右。。不知道压力下会不会出现别的情况。。这个情况难道大家都没有遇到过吗?我觉得好像蛮普遍的。。。
benzzy
2010-07-23
打赏
举报
回复
可能是点第一次之后,还没插入数据,就来了点击第二次的事件。
因此,最好是在点了之后,先将该按钮变灰,再处理时间,这样就不会出现点击两次以上的情况了
canyue1980
2010-07-23
打赏
举报
回复
[Quote=引用 16 楼 kyzy_yy_pm 的回复:]
引用 12 楼 xuzuning 的回复:
只能说你的程序有问题
有时候卡,程序根本就没来得及作反应,就像腾讯的群空间右上角的那个鲜花了什么的,每天点击只可一次,可是常常可以点击很多次(只要不停就可以一直点)
[/Quote]
对的,就是类似于这个问题了。。。呵呵。。用JS可能好一点,但是如果人家恶意的呢,这个就麻烦了。。
有没有在PHP端判断的方法,是不是和线程之类的有关呢,还有就是执行顺序,并发数什么的方面限制呢?
zhaoyu0826
2010-07-23
打赏
举报
回复
用JS点击之后加个遮盖层,延迟个3秒,谁都别点了。他网速慢,机器总不会也慢吧。嘿嘿
kyzy_yy_pm
2010-07-23
打赏
举报
回复
[Quote=引用 12 楼 xuzuning 的回复:]
只能说你的程序有问题
[/Quote]
有时候卡,程序根本就没来得及作反应,就像腾讯的群空间右上角的那个鲜花了什么的,每天点击只可一次,可是常常可以点击很多次(只要不停就可以一直点)
kyzy_yy_pm
2010-07-23
打赏
举报
回复
首先在客户端判断两次点击的时间(在客户端用时间限制,一定时间内不可再点,客户端判断应该很快吧),然后再在php页面判断
张小莱
2010-07-23
打赏
举报
回复
用JS加验证,点击之后把按钮设置为不可点击
dahaidao
2010-07-23
打赏
举报
回复
看一下你判断那个地方是怎么写的。
xuzuning
2010-07-23
打赏
举报
回复
只能说你的程序有问题
lizhike
2010-07-23
打赏
举报
回复
操作的时候加上功能锁 试试
很
郁闷
的
问题
,
帮
我解决呀!!
博主下载并尝试安装一个ASP.NET整站程序时遇到数据库连接错误,尽管能够单独访问数据库,但在运行程序时仍提示用户不存在,已尝试多种账户但
问题
依旧。
今天失手了
博主今日
帮
人解决程序
问题
,未能成功,为此感到
郁闷
。
郁闷
乃生活纸常态
博客指出
郁闷
已成为生活常态,人们常将其挂在嘴边。繁忙生活和复杂社会让人感到
郁闷
,‘
郁闷
’成了宣泄烦恼、苦闷、压抑和劳累的词汇。
郁闷
是人生的本质
博客探讨了生活与生命的意义,提到‘
郁闷
’源于难寻知心人。指出生命是过程,死亡证实存在意义,若长生不老会陷入虚无。还谈到生活如原地转圈,但仍要满怀希望,最后表达对小色的敬意。
郁闷
着
博客内容提及处于
郁闷
状态,同时进行搜索和编码操作,体现了在信息技术工作中可能遇到的情绪与行为。
基础编程
21,889
社区成员
140,337
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章