Web_PHP_DedeCMS_点赞功能实现(客户端JQuery请求,服务端PHP响应)
来源:互联网 发布:单机围棋软件 编辑:程序博客网 时间:2024/06/05 03:54
一、后台准备
1、添加zan字段:为dede_archives文章表添加zan字段;
ALTER TABLE dede_archives ADD zan int(11) NOT NULL DEFAULT '0' AFTER weight;
在 dede_archives 表中增加zan字段,这个字段被加到weight字段后边;
2、创建
dede_zan赞数据表:保存被赞的文档aid 及IP的,为了检测是否赞过的IP;
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=utf83、添加赞专属处理函数:在include/extend.func.php 中增加以下函数,用来获取文档被赞次数的,可以通过为文章id调用此函数来实现
function zan($aid) { global $dsql; $row = $dsql - > GetOne("Select id,zan From dede_archives where id='".$aid."'"); return $row['zan'];<span style="white-space:pre"></span>// 基于id从数据库中取出数据来显示;}
二、前台实现(模板templets/default/article_article.htm)
1、HTML
<div class="zan"> <p> <!--此处rel属性用于保存文章ID号,以便用作请求参数--> <a href="#" title="点赞 " class="img_on" rel="{dede:field.id/}">{dede:field.id function="zan(@me)"/}</a> </p></div>
2、CSS
<pre name="code" class="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}
3、加入JS,记得引入jquery.js;
<script type="text/javascript" src="/jquery.js"></script>
$(function(){ $("p a").click(function(){ var zan = $(this); <span style="white-space:pre"></span>// a链接; 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; }); });
三、响应请求
1、建立zan.php 放到根目录
<?phprequire_once (dirname(__FILE__) . "/include/common.inc.php");$ip =getip(); //获取用户IP;$id = $_POST['id'];
if(!isset($id) || empty($id)) exit; //查询已赞过的IP$dsql->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; <span style="white-space:pre"></span>// 把数据返回客户端;}else{ echo "已赞"; }
特别说明:本文整理自http://jjm.hk/php_mysql/1121M2014.html,欢迎大家支持原版!
0 1
- Web_PHP_DedeCMS_点赞功能实现(客户端JQuery请求,服务端PHP响应)
- Web_PHP_DedeCMS_评论留言提交、请求、点赞闲谈;
- Web_PHP_DedeCMS_评论管理_点赞功能闲谈;
- Web_PHP_DedeCMS_搜索功能实现集锦;
- servlet3-客户端请求与服务端响应(request,response)
- 自学php,用php服务端和swift客户端实现验证登录和注册功能 1
- Jquery Ajax客户端跨域请求 以及服务端Python代码实现
- jQuery-简单点赞功能实现
- jquery实现锚点功能
- jQuery发送ajax请求,PHP响应ajax请求(含跨域)
- jquery+php实现赞,踩功能
- Web_PHP_DedeCMS_如何配合php标签实现分页效果?!
- 国标GBT28181协议,注册功能服务端与客户端实现代码
- Linux网络编程实现客户端服务端收发数据功能
- libevent实现服务端客户端的回显功能
- jquery ajax之点赞功能的实现
- netty 服务端作为客户端跳转请求服务端
- Java实现服务器端对多个客户端请求响应
- 空白阿里云上安装git
- 百度BAE云应用引擎上部署安装phpwind9.0
- Linux SSH双向认证配置方法和经验总结
- 推荐文章:反过来思考世界,给那些傲慢自大的大公司HR们看看
- 模块间接口报文校验2
- Web_PHP_DedeCMS_点赞功能实现(客户端JQuery请求,服务端PHP响应)
- 同时闪烁多个要素代码
- IOS开发——ZBar自定义界面
- Linux系统FSTAB文件只读问题解决
- VmWare虚拟机中网卡更改为eth0的方法
- Android之EditText控件学习
- 使用命令行方式运行 JMeter 脚本
- CentOS6.3安装CloudStack4.0
- [hdoj]2007