php点击加入或取消收藏ajax接受数据session存储
feilong.org 修订于2012-02-03 12:55:02 250 次浏览点击某个图片或文本链接或任何DOM元素,将某日志文章加入收藏或取消收藏,可以采用ajax实现,然后在接受数据页用session存储该文章ID号。如何用Ajax与session结合,实现加入或取消收藏的功能?飞龙自己捣鼓了以下的代码。本日志修订网址:http://feilong.org/ajax-session-click-add-remove-favorate
一、首先在点击互动页,一般是某文章页。
飞龙的WordPress是某个single日志页,需要实现点击链接切换收藏或取消收藏的效果。同时需要向目标数据接受页传递日志ID号。
1、根据本文章是否已经收藏,调出对应的链接图片或文本:
取消收藏
加入收藏
2、点击上面显示出来的某个链接,实现轮换链接,并实现向“数据接受页”传递日志ID号。以下是飞龙自己写的jQuery和Ajax结合实现变换和传递数据。
////收藏////
$(function(){
var pid=$("#pid").attr("title");//alert(pid);
$("#biaoji").click(function(){//
$(this).toggleClass("hide");
// 向‘收藏页’提交此文的pid
$.ajax({
type: "POST",
url: "http://127.0.0.1/xinyuan/bookmark",//此为数据接受页,可以改为你自己的实际url
data:"pid="+pid,
success: function(msg){ // alert(msg);
var addpid=$(msg).find("#addpid").text();//alert(addpid); //此#addpid点击的同时,数据接受页内的DOM
//$("#zhaiyao").append(msg);
if(addpid){
alert('success: 收藏此文ID:'+addpid); //成功提示,可以采用其它方式提示
}else{//收藏失败
}//
}//success
});//$.ajax
$("#biaojied").toggleClass("hide");
});
});//0
////取消收藏////
$(function(){
var pid=$("#pid").attr("title");//alert(pid);
$("#biaojied").click(function(){//
$(this).toggleClass("hide");
// 向‘收藏页’提交此文的pid
$.ajax({
type: "POST",
url: "http://127.0.0.1/xinyuan/bookmark",
data:"pid="+pid,
success: function(msg){ // alert(msg);
var movepid=$(msg).find("#movepid").text();//alert(movepid);
//$("#zhaiyao").append(msg);
if(movepid){
alert('success: 取消收藏此文ID:'+movepid);
}else{
//无法取消收藏?
}//
}//success
});//$.ajax
$("#biaoji").toggleClass("hide");
});
});//0
二、数据接受页,飞龙采用指定的某page页面。需要接受来自 互动点击页的ID,并检查已有session是否有此日志ID,并做相应的处理,输出新的session值。如果是直接打开此页面,而没有接受到任何数据,那么直接取出已有的session值。
1、接受传递过来的日志ID,并处理session得到新session,显示日志ID的DOM,方便第一步里msg调用。
'.$addpid.'