php中使用Akismet防止垃圾评论的代码


Posted in PHP onJune 10, 2011

然而,人无完人,插(件)无完插!Akismet也并非完美,最近, 我常在被Akismet评判为垃圾的留言中找到“好人”的留言,然而,有时时间长了就自动删除了,损失珍贵的友情和留言。
别忘了修改代码中的 __YOUR_AKISMET_KEY__, __YOUR_WEBSITE_URL__ and __YOUR_NAME__
http://www.script-tutorials.com/akismet-spam-protection/
index.php

<? 
require_once ('classes/Akismet.class.php'); 
class MySpamProtection { 
// variables 
var $sMyAkismetKey; 
var $sWebsiteUrl; 
var $sAuthName; 
var $sAuthEml; 
var $sAuthUrl; 
var $oAkismet; 
// constructor 
public function MySpamProtection() { 
// set necessary values for variables 
$this->sMyAkismetKey = '__YOUR_AKISMET_KEY__'; 
$this->sWebsiteUrl = '__YOUR_WEBSITE_URL__'; 
$this->sAuthName = '__YOUR_NAME__'; 
$this->sAuthEml = ''; 
$this->sAuthUrl = ''; 
// Akismet initialization 
$this->oAkismet = new Akismet($this->sWebsiteUrl ,$this->sMyAkismetKey); 
$this->oAkismet->setCommentAuthor($this->sAuthName); 
$this->oAkismet->setCommentAuthorEmail($this->sAuthEml); 
$this->oAkismet->setCommentAuthorURL($this->sAuthUrl); 
} 
public function isSpam($s) { 
if (! $this->oAkismet) return false; 
$this->oAkismet->setCommentContent($s); 
return $this->oAkismet->isCommentSpam(); 
} 
} 
echo <<<EOF 
<style type="text/css"> 
form div { 
margin:10px; 
} 
form label { 
width:90px; 
float:left; 
display:block; 
} 
</style> 
<form action="" method="post"> 
<div><label for="author">Author</label><input id="author" name="author" type="text" value="" /></div> 
<div><label for="comment">Comment</label><textarea id="comment" name="comment" cols="20" rows="4"></textarea></div> 
<div><input name="submit" type="submit" value="Send" /></div> 
</form> 
EOF; 
if ($_POST) { 
// draw debug information 
echo '<pre>'; 
print_r($_POST); 
echo '</pre>'; 
// obtain sent info 
$sPostAuthor = $_POST['author']; 
$sCommentComment = $_POST['comment']; 
// check for spam 
$oMySpamProtection = new MySpamProtection(); 
$sAuthorCheck = ($oMySpamProtection->isSpam($sPostAuthor)) ? ' "Author" marked as Spam' : '"Author" not marked as Spam'; 
$sCommentCheck = ($oMySpamProtection->isSpam($sCommentComment)) ? ' "Comment" marked as Spam' : '"Comment" not marked as Spam'; 
echo $sAuthorCheck . '<br />' . $sCommentCheck; 
} 
?>

source.zip

PHP 相关文章推荐
PHP 可阅读随机字符串代码
May 26 PHP
php include加载文件两种方式效率比较
Aug 08 PHP
PHP 命名空间实例说明
Jan 27 PHP
mcrypt启用 加密以及解密过程详细解析
Aug 07 PHP
php读取大文件示例分享(文件操作类)
Apr 13 PHP
PHP实现的简易版图片相似度比较
Jan 07 PHP
php获取twitter最新消息的方法
Apr 14 PHP
PHP缓冲区用法总结
Feb 14 PHP
php文件类型MIME对照表(比较全)
Oct 07 PHP
php实现文章置顶功能的方法
Oct 20 PHP
php创建图像具体步骤
Mar 13 PHP
为何说PHP引用是个坑,要慎用
Apr 02 PHP
php中通过虚代理实现延迟加载的实现代码
Jun 10 #PHP
php获取后台Job管理的实现代码
Jun 10 #PHP
php下通过curl抓取yahoo boss 搜索结果的实现代码
Jun 10 #PHP
PHP缩略图等比例无损压缩,可填充空白区域补充色
Jun 10 #PHP
PHP网站备份程序代码分享
Jun 10 #PHP
php在页面中调用fckeditor编辑器的方法
Jun 10 #PHP
PHP中遍历stdclass object的实现代码
Jun 09 #PHP
You might like
一个基于PDO的数据库操作类(新) 一个PDO事务实例
2011/07/03 PHP
php中实现获取随机数组列表的自定义函数
2015/04/02 PHP
php对mongodb的扩展(小试牛刀)
2012/11/11 Javascript
javascipt基础内容--需要注意的细节
2013/04/10 Javascript
document.execCommand()的用法小结
2014/01/08 Javascript
JavaScript省市联动实现代码
2014/02/15 Javascript
javascript回车完美实现tab切换功能
2014/03/13 Javascript
jQuery带箭头提示框tooltips插件集锦
2014/11/17 Javascript
jQuery中parentsUntil()方法用法实例
2015/01/07 Javascript
JavaScript使用FileSystemObject对象写入文本文件内容的方法
2015/08/05 Javascript
js正则表达式replace替换变量方法
2016/05/21 Javascript
Javascript如何判断数据类型和数组类型
2016/06/22 Javascript
Bootstrap Validator 表单验证
2016/07/25 Javascript
AngularJS 2.0入门权威指南
2016/10/08 Javascript
基于Bootstrap的网页设计实例
2017/03/01 Javascript
Bootstrap fileinput组件封装及使用详解
2017/03/10 Javascript
webpack 4.0.0-beta.0版本新特性介绍
2018/02/10 Javascript
chosen实现省市区三级联动
2018/08/16 Javascript
jquery实现购物车基本功能
2019/10/25 jQuery
vue学习笔记之slot插槽用法实例分析
2020/02/29 Javascript
vue跳转页面的几种方法(推荐)
2020/03/26 Javascript
详细分析JavaScript中的深浅拷贝
2020/09/17 Javascript
Python 正则表达式实现计算器功能
2017/04/29 Python
python爬取足球直播吧五大联赛积分榜
2018/06/13 Python
如何基于Python创建目录文件夹
2019/12/31 Python
python实现信号时域统计特征提取代码
2020/02/26 Python
多视角3D逼真HTML5水波动画
2016/03/03 HTML / CSS
ellesse美国官方商店:意大利高级运动服品牌
2019/10/29 全球购物
毕业生的自我鉴定该怎么写
2013/12/02 职场文书
资产经营总监岗位职责
2013/12/04 职场文书
党的群众路线教育实践活动宣传方案
2014/02/23 职场文书
2015年考研复习计划
2015/01/19 职场文书
音乐教师个人总结
2015/02/06 职场文书
药店收银员岗位职责
2015/04/07 职场文书
我的暑假生活作文(五年级)范文
2019/08/07 职场文书
python使用XPath解析数据爬取起点小说网数据
2021/04/22 Python