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 MYSQL中插入当前时间
Apr 06 PHP
php中文字母数字验证码实现代码
Apr 25 PHP
thinkphp验证码显示不出来的解决方法
Mar 29 PHP
thinkphp循环结构用法实例
Nov 24 PHP
PHP实现WebService的简单示例和实现步骤
Mar 27 PHP
PHP SPL标准库之数据结构堆(SplHeap)简单使用实例
May 12 PHP
变量在 PHP7 内部的实现(二)
Dec 21 PHP
php使用Jpgraph创建柱状图展示年度收支表效果示例
Feb 15 PHP
php递归函数怎么用才有效
Feb 24 PHP
PHP支付宝当面付2.0代码
Dec 21 PHP
浅谈PHP无限极分类原理
Mar 14 PHP
PHP 图片处理
Sep 16 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
ThinkPHP模板判断输出Empty标签用法详解
2014/06/30 PHP
浅析php-fpm静态和动态执行方式的比较
2016/11/09 PHP
Yii框架扩展CGridView增加导出CSV功能的方法
2017/05/24 PHP
PHP生成随机数的方法总结
2018/03/01 PHP
syntaxhighlighter 使用方法
2007/07/02 Javascript
javascript 原型继承介绍
2011/08/30 Javascript
javascript中有趣的反柯里化深入分析
2012/12/05 Javascript
IE下写xml文件的两种方式(fso/saveAs)
2013/08/05 Javascript
深入理解关于javascript中apply()和call()方法的区别
2016/04/12 Javascript
javascript入门之数组[新手必看]
2016/11/21 Javascript
JS库之Highlight.js的用法详解
2017/09/13 Javascript
限时抢购-倒计时的完整实例(分享)
2017/09/17 Javascript
微信小程序上传图片到服务器实例代码
2017/11/07 Javascript
jquery获取input输入框中的值
2019/11/13 jQuery
[01:44]Ti10举办地公布
2019/08/25 DOTA
Python获取当前路径实现代码
2017/05/08 Python
Python常用的json标准库
2019/02/19 Python
selenium 安装与chromedriver安装的方法步骤
2019/06/12 Python
python实现将视频按帧读取到自定义目录
2019/12/10 Python
Python面向对象程序设计之继承、多态原理与用法详解
2020/03/23 Python
Python selenium 加载并保存QQ群成员,去除其群主、管理员信息的示例代码
2020/05/28 Python
Keras load_model 导入错误的解决方式
2020/06/09 Python
canvas如何实现多张图片编辑的图片编辑器
2020/03/10 HTML / CSS
联想香港官方网站及网店:Lenovo香港
2018/04/13 全球购物
潘多拉珠宝英国官方网上商店:PANDORA英国
2018/06/12 全球购物
Converse匡威法国官网:美国著名帆布鞋品牌
2018/12/05 全球购物
一份Java笔试题
2012/02/21 面试题
精通CAD能手自荐书
2014/01/31 职场文书
领导班子个人对照检查剖析材料
2014/09/29 职场文书
2014年效能监察工作总结
2014/11/21 职场文书
幼儿教师2014年度工作总结
2014/12/16 职场文书
医院财务人员岗位职责
2015/04/14 职场文书
2015年小学数学教师个人工作总结
2015/05/25 职场文书
公司员工培训管理制度
2015/08/04 职场文书
2019预备党员转正申请书模板2篇!
2019/08/07 职场文书
OpenCV图像变换之傅里叶变换的一些应用
2021/07/26 Python