登录
立即注册
首页
>
绿虎论坛
>
历史版块
>
编程
>
PHP
>
讨论/求助
如何判断用户发表的文章重复性?
飞雨漫天
@Ta
2013-11-14
3321点击
从来没有开发过程序。。今天开始第一次自己开始写,已经学到面向对象的编程了,有了一些基础知识了我才敢动的手,今天完成了发表文章,可是在插入数据库的时候我发现可以重复不停的插入相同的内容到数据库去,百度了半天只找到个在插入前先判断,可是如何判断呢?没懂,还有就是那样做会不会特别耗资源啊?开发过php的高手们给个思路吧?
@
老虎会游泳
隐藏样式
查看源码
回复列表(7|
隐藏机器人聊天
)
1
方哥
@Ta
/ 2013-11-15 /
样
/
源
被禁言
用户被禁言,发言自动屏蔽。
2
洋
@Ta
/ 2013-11-15 /
样
/
源
@
方哥_不活跃
,
@
苍月无痕
,加unique不太好,字段长度也有限制。建议哈希一下,比较哈希索引。如果不是防止刷,可以不提交到一个页面。用一些前端手段,会话加表单token方式(可一定程度防止蠕虫)
3
方哥
@Ta
/ 2013-11-15 /
样
/
源
被禁言
用户被禁言,发言自动屏蔽。
4
2
@Ta
/ 2013-11-15 /
样
/
源
session
用户发帖一段时间内不得再次发帖
5
飞雨漫天
@Ta
/ 2013-11-15 /
样
/
源
@
洋
,
@
方哥_不活跃
,
@
齐子
,谢谢你们的建议!我试试看!
6
坏蛋先森
@Ta
/ 2013-11-17 /
样
/
源
一个简单的例子,举一反三:
<?php
session_start();
//请先在发帖前初始化用户session,否则会出错的哦
if ((time() < $_SESSION['repeat_time']))
{
echo '过了 ' . ($_SESSION['repeat_time'] - time()) . ' 秒再来发帖吧!';
exit;
}
echo '发帖成功!';
$_SESSION['repeat_time'] = time() + 10;//十秒
?>
7
Cute-寂寥
@Ta
/ 2013-11-17 /
样
/
源
被禁言
用户被禁言,发言自动屏蔽。
添加新回复
回复需要
登录
。
用户发帖一段时间内不得再次发帖
<?php
session_start();
//请先在发帖前初始化用户session,否则会出错的哦
if ((time() < $_SESSION['repeat_time']))
{
echo '过了 ' . ($_SESSION['repeat_time'] - time()) . ' 秒再来发帖吧!';
exit;
}
echo '发帖成功!';
$_SESSION['repeat_time'] = time() + 10;//十秒
?>