>  기사  >  백엔드 개발  >  点评/投票/情绪类的功能什么机制限制会员只能投一次最省事

点评/投票/情绪类的功能什么机制限制会员只能投一次最省事

WBOY
WBOY원래의
2016-06-13 12:05:111068검색

点评/投票/心情类的功能什么机制限制会员只能投一次最省事?
一些好像点评的系统,比如:文章下面,显示:好评/差评  这样的按钮

也就是像CSDN论坛的文章页面的...
对我有用[0] 丢个板砖[0] 

个人理解:
点一下经由AJAX/JQ这类发送去PHP操作MYSQL, 把好评/差评的字段+1

但是,一般这类的东,都是限制ip,甚至是只限cookie...

如果好评/差评的数据确有需要非常准确无水份

我是想用会员登入后才能点评(投票好差)的

那mysql 是否需要建议一个独立的点评表?

还有数据架构有什么比较好的方法,可以限制会员只能投一次?

请教一下各位,有什么好的建议?
------解决方案--------------------
建表是必须的,还不止一张
因为你还可能有 XX 关注了 XX、XX 是 XX 的好友等一系列的需求
需要综合考量
你现在思索的的是 SNS 网站的核心(或称基础)
------解决方案--------------------
参考下:

投票信息表:

<br />CREATE TABLE `votes` (<br />   `id` int(11) NOT NULL AUTO_INCREMENT,<br />   `ip` varchar(250) NOT NULL,<br />   ·uid· int(11) NOT NULL,<br />   `vid` int(11) NOT NULL,<br />   `fstcreate` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,<br />   PRIMARY KEY (`id`)<br /> ) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8<br />



文章表

<br />CREATE TABLE `article` (<br />   `id` int(11) NOT NULL AUTO_INCREMENT,<br />   `article_title` varchar(250) NOT NULL,<br />   `article_type` int(11) NOT NULL,<br />   `article_content` longtext NOT NULL,<br />   `article_author` varchar(50) NOT NULL,<br />   `article_click_count` int(11) NOT NULL DEFAULT '0',<br />   `status` int(11) NOT NULL DEFAULT '0',<br />   `likes` int(11) DEFAULT '0',<br />   `unlikes` int(11) DEFAULT '0',<br />   `fstcreate` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,<br />   `lastmodify` datetime DEFAULT NULL,<br />   PRIMARY KEY (`id`),<br />   FULLTEXT KEY `fulltext_article_title` (`article_title`,`article_content`,`key_words`)<br /> ) ENGINE=MyISAM AUTO_INCREMENT=119 DEFAULT CHARSET=utf8 CHECKSUM=1 DELAY_KEY_WRITE=1 ROW_FORMAT=DYNAMIC COMMENT='文章表'<br />



如果限定登陆用户才可以投票,这样只要控制用户id和投票的主题id即可。
------解决方案--------------------
同一篇評論同一個用戶只能投一次就可以了。

表結構可以這樣
id
aid          評論id
mid         用戶id
addtime 發佈時間

select count(*) from table where aid=? and mid=? 判斷是否=1 來確定用戶是否可以再投這個評論。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.