打印

[asp] 积分问题

比如我是XX网站会员,有十个积分。看一条信息减去一分。看一同条信息不扣分。该怎么做呢?
http://www.seo8858.cn
那信息是给一个看的还是很多人都可以看?
如果一个人看的比较简单,在保存信息的表新加一字段,默认值0(也可为其它,区分开就行了)
当用户阅读过后就将该字段的值变为1.扣分的话,当为0时则扣分,为1则不扣。
如果公开的信息大家都可以,则稍麻烦一点,可以另外建个表来存储是否已阅,也可以在信息表或者用户表新加一备注字段,如果加在信息表则将已阅读过信息的用户ID保存到该字段中,用分隔符隔开,如果加在用户表,则相反,将该用户阅读过的ID保存到该字段中。
扣分的时候判断ID是否存在(instr)就行了,如果不存在则扣分,并将ID加进去,如果ID已经存在则不用扣分。
淡泊以明志 宁静而致远
看同一条信息不扣分,可以结合cookies。
乐于助人、严格管理、言多必失。无知者无罪。Keep your waiting,I am back.
编程资源:http://book.kuhanzhu.com
对管理有异议,请前往事务区进行投诉。请勿PM。

回复 3# kuhanzhu 的帖子

加密好一点,cookies保存到本地的,毕竟不太可靠
淡泊以明志 宁静而致远

TOP

还在为头像烦恼?还在为不能关注好友动态烦忧?快来蓝色理想家园吧!
加个字段判断为好,, 要是以后cookies失效..cookies被清除了。 . 那在看不也要扣除积分..

TOP

http://d.download.csdn.net/down/605817/totty12345
这个网站的下载形式就是这样的。会员先是积分。下载一次减少一分。下载同样的信息不扣分。。
http://www.seo8858.cn

TOP

还是不要用Cookie,用数据库比较好

可以写个这样的函数,生成 HASH 值
hash_value = md5(table_name + primary_key_id)

将这个数据存入数据库   userid    hash_value  ip

然后查询
where userid=当前用户
  and hash_value=HASH 值
  (and ip=当前IP)如果userid=0则未针对未登录用户使用

如果不存在数据则扣分,并写入一条记录,如果存在则不扣分了

TOP

楼上方法很好,学习了。
一路小跑!

TOP