如何使用bbcode标记检查内容中的垃圾邮件?

时间:2011-06-12 09:42:01

标签: php preg-replace spam-prevention

我用作bbcode:

$text=preg_replace("/\[b\](.*?)\[\/b\]/i","<b>\\1</b>", $text);

但是有些人用这个bb代码做垃圾邮件:

[b]ww[/b][b]w[/b].[b]ex[/b][b][/b][b]um[/b].[b]c[/b][b]o[/b][b]m[/b] 

我有mysql数据库存储此垃圾邮件关键字。但是它不会捕获这个链接,因为它们使用bbcode。如何在内容为bbcode标记时检查内容是否为垃圾邮件?

2 个答案:

答案 0 :(得分:0)

我建议删除bbcode并检查完整的单词。

此外,您可能希望使用Akismet来验证帖子不是垃圾邮件。 PEAR有一个Akismet package,可以很容易地连接服务。

答案 1 :(得分:0)

如果它可以阻止整个帖子/评论,如果它有垃圾邮件关键字,那么你可以采用这种方法(对不起,这里没有代码):

1)删除所有bb代码和其他格式(例如html,如果存在)

2)使用纯文本