首页 > CMS > 织梦DEDE > 正文

dedecms如何实现点赞功能

2024-07-12 08:47:21
字体:
来源:转载
供稿:网友
这篇文章主要为大家详细介绍了dedecms如何实现点赞功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴。

很多时候我们想给网站增加一个点赞的功能,织梦dedecms该如何实现呢?

首先后台执行SQL 

ALTER TABLE dede_archives ADD zan int(11) NOT NULL DEFAULT '0' AFTER weight;

也就是在 dede_archives 表中增加 zan 这个字段,加到weight这个字段后边。 

然后执行

CREATE TABLE IF NOT EXISTS `dede_zan` (   `id` int(11) NOT NULL AUTO_INCREMENT,   `aid` int(11) NOT NULL,   `ip` varchar(40) NOT NULL,   PRIMARY KEY (`id`) ) ENGINE=MyISAM  DEFAULT CHARSET=utf8

这个表是保存被赞的文档aid 及IP的,为了检测是否赞过的IP

然后在include/extend.func.php 中增加以下函数,用来获取文档被赞次数的 

function zan($aid){    global $dsql;    $row = $dsql->GetOne("Select id,zan From dede_archives where id='".$aid."'");    return $row['zan'];    }

打开模板templets/default/article_article.htm

加入css

.zan p{background:#000; opacity:.8;filter:alpha(opacity=80);} .zan p a{padding-left:30px; height:24px; background:url(/images/heart.png) no-repeat  4px -1px;color:#fff; font-weight:bold; font-size:14px} .zan p a:hover{background-position:4px -25px;text-decoration:none}

 

加入JS,记得引入jquery.js

$(function(){     $("p a").click(function(){         var zan = $(this);         var id = zan.attr("rel"); //对应id         zan.fadeOut(300); //渐隐效果         $.ajax({             type:"POST",             url:"/zan.php",             data:"id="+id,             cache:false, //不缓存此页面             success:function(data){                 zan.html(data);                 zan.fadeIn(300); //渐显效果             }         });         return false;     }); });

加入 

{dede:field.id function="zan(@me)"/}

建立zan.php 放到根目录 

SetQuery("SELECT ip FROM dede_zan  WHERE aid='".$id."' and ip='$ip'");$dsql->Execute();$count = $dsql->GetTotalRow();if($count==0){ //如果没有记录     $dsql->ExecuteNoneQuery("update dede_archives set zan=zan+1 where id='$id'; ");//写入赞数     $dsql->ExecuteNoneQuery("insert into dede_zan (aid,ip) values ('$id','$ip'); ");//写入IP,及被赞的AID     $rows = $dsql->GetOne("Select zan  from dede_archives where id='".$id."'");//获取被赞的数量    $zan = $rows['zan']; //获取赞数值     echo $zan; }else{     echo "赞过了.."; }

到这里,点赞功能就开发好了,小伙伴们快去尝试看下吧,操作之前,注意备份哦。


以上就是dedecms如何实现点赞功能的全部内容,希望对大家的学习和解决疑问有所帮助,也希望大家多多支持武林网。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表