RSS
热门关键字:

PJ Blog修改-垃圾引用防治

来源: 作者: 时间:2006-10-24 Tag: 点击:
10.6日更新:完善了代码解决了重复生成同样的数字赋值给KEY的错误。请按照以前方法修改的朋友打开 trackback.asp 查找到
程序代码 程序代码
" tbKey=100000 + int(899999*rnd) "


修改为

程序代码 程序代码
RANDOMIZE
tbKey=int(900000*rnd)+100000


欢迎大家继续查错。

10.4日更新:已经完成所有预想的功能,引用地址增加 Key 值验证,每被成功发送一次引用随机生成新的 Key 值并写入数据库保存,页面上的引用地址默认隐藏,通过点击查看。

测试地址:http://www.alonefly.net/test

打开任意一篇日志,点击 “ 查看引用地址 ” 得到真实的 引用链接地址。原 PJBLOG 默认的引用地址,即链接最后面不带 “ &key= ” 字样的将无法成功发送引用。

向本站发送引用后,引用地址中的 key 会随机更换成新的 6 位数值。

=================================================
LBS 那边的插件开发项目大部分都完结,顺便过来看看PJBLOG,发现大家还是采取极端手段对付垃圾引用不觉得……ER……不知道形容了。这段时间对 VBScript 更加了解了,便尝试将 LBS 的垃圾引用屏蔽功能移植过来。

首先在 blog_Info 表内增加一个字段,字段名称 blog_tbKey 数据类型为数字。并且填入任意数字为值

打开 trackback.asp 搜索:

程序代码 程序代码
If Conn.Execute("Select count(tb_ID) FROM blog_Trackback Where blog_ID="&tbID&" AND tb_URL='"&tbURL&"' AND tb_Title='"&tbTitle&"' AND tb_Intro='"&tbExcerpt&"' AND tb_Site='"&tbBlog&"'")(0)>0 Then
tbResponseXML 1,"此引用通告已发送!"
end if

if filterSpam(tbExcerpt & tbURL,"spam.xml") then
tbResponseXML 1,"此引用通告中包含被屏蔽的字符"
end if


修改为:

程序代码 程序代码
if StrComp(Request.QueryString("key"),blog_tbKey)=0 Then

If Conn.Execute("Select count(tb_ID) FROM blog_Trackback Where blog_ID="&tbID&" AND tb_URL='"&tbURL&"' AND tb_Title='"&tbTitle&"' AND tb_Intro='"&tbExcerpt&"' AND tb_Site='"&tbBlog&"'")(0)>0 Then
tbResponseXML 1,"此引用通告已发送!"
end if

if filterSpam(tbExcerpt & tbURL,"spam.xml") then
tbResponseXML 1,"此引用通告中包含被屏蔽的字符"
end if

else
tbResponseXML 1,"嘿!你小子搞错地址了吧!"
end if


搜索到

程序代码 程序代码
Conn.Execute("Insert INTO blog_TrackBack (blog_ID, tb_URL, tb_Title, tb_Intro, tb_Site, tb_PostTime) VALUES ("&tbID&",'"&tbURL&"','"&tbTitle&"','"&tbExcerpt&"','"&tbBlog&"',Now())")
Conn.Execute("Update blog_Content SET log_QuoteNums=log_QuoteNums+1 Where log_ID="&tbID)
Conn.Execute("Update blog_Info Set blog_tbNums=blog_tbNums+1")


替换成

程序代码 程序代码
dim tbKey
RANDOMIZE
tbKey=int(900000*rnd)+100000
Conn.Execute("Insert INTO blog_TrackBack (blog_ID, tb_URL, tb_Title, tb_Intro, tb_Site, tb_PostTime) VALUES ("&tbID&",'"&tbURL&"','"&tbTitle&"','"&tbExcerpt&"','"&tbBlog&"',Now())")
Conn.Execute("Update blog_Content SET log_QuoteNums=log_QuoteNums+1 Where log_ID="&tbID)
Conn.Execute("Update blog_Info Set blog_tbNums=blog_tbNums+1")
Conn.Execute("Update blog_Info Set blog_tbKey="&tbKey)


打开 class/cls_logAction.asp 搜索

程序代码 程序代码
SiteURL&"trackback.asp?tbID="&LogID


替换成

程序代码 程序代码
SiteURL&"trackback.asp?tbID="&LogID&"&key="&blog_tbKey


打开 Template/Article.asp 搜索到:

程序代码 程序代码
<a href="<$trackback$>" target="_blank"><$trackback$></a><br/>


替换成

程序代码 程序代码
<span id=tburl><a href="javascript:showTrackBack()">查看引用地址</a></span><br/>
<script type="text/javascript">
// 引用地址显示
function showTrackBack(){
var tb_url_text
tb_url_text = '<a href="<$trackback$>" target="_blank"><$trackback$></a>'
document.getElementById("tburl").innerHTML = tb_url_text
}
</script>


打开 class/cls_article.asp,搜索到

程序代码 程序代码
<a href="<%=(SiteURL&"trackback.asp?tbID="&id)%>" target="_blank"><%=(SiteURL&"trackback.asp?tbID="&id)%></a><br/>


替换成:

程序代码 程序代码
<span id=tburl><a href="javascript:showTrackBack()">查看引用地址</a></span><br/>
<script type="text/javascript">
// 引用地址显示
function showTrackBack(){
var tb_url_text
tb_url_text = '<a href="<%=(SiteURL&"trackback.asp?tbID="&id&"&key="&blog_tbKey)%>" target="_blank"><%=(SiteURL&"trackback.asp?tbID="&id&"&key="&blog_tbKey)%></a>'
document.getElementById("tburl").innerHTML = tb_url_text
}
</script>


最后打开 common/cache.asp,搜索到

程序代码 程序代码

Dim blog_wapNum,blog_wapImg,blog_wapHTML,blog_wapLogin,blog_wapComment,blog_wap,blog_wapURL


替换成

程序代码 程序代码

Dim blog_wapNum,blog_wapImg,blog_wapHTML,blog_wapLogin,blog_wapComment,blog_wap,blog_wapURL,blog_tbKey


搜索到

程序代码 程序代码

"blog_wapNum,blog_wapImg,blog_wapHTML,blog_wapLogin,blog_wapComment,blog_wap,blog_wapURL" & _


替换成

程序代码 程序代码

"blog_wapNum,blog_wapImg,blog_wapHTML,blog_wapLogin,blog_wapComment,blog_wap,blog_wapURL,blog_tbKey" & _


搜索到

程序代码 程序代码

blog_wapURL=CBool(blog_Infos(44,0))'使用 wap 转换文章超链接


从下一行插入

程序代码 程序代码

blog_tbKey=int(blog_Infos(45,0))'引用验证Key


这样就修改完毕了

最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册