整理文档,搜刮出一个php 实现收藏功能的示例代码,稍微整理精简一下做下分享。
HTML:取消收藏收藏
Js://点击收藏,实现已收藏 $(".x").on("click",function(){ var Oa=$(this); var id=Oa.attr("id");//获取图片id属性 var uid = Oa.attr("uid");//获取用户id var status = Oa.attr("status"); //获取收藏状态 1收藏,0取消收藏 $.post("url",{id:id,uid:uid,status:status},function(msg){ if(msg.status==1){ Oa.find("span").text("取消收藏"); Oa.attr("status","1"); }else{ Oa.find("span").text("收藏"); Oa.attr("status","0"); } },"json") })
PHP://判断用户是否已收藏该图片 $data["uid"] = $_SESSION["uid"]; $data["pid"] = $pid; $collect_pic = M("collect")->where($data)->getfield("status"); $this->collect_num = $collect_num; $this->collect_pic = $collect_pic;//收藏成功 public function cang(){ $data["pid"] = isset($_POST["id"])?intval(trim($_POST["id"])):0; $data["uid"] = $_SESSION["uid"]; //默认o收藏 1取消收藏 $status = isset($_POST["status"])?intval(trim($_POST["status"])):0; $db = M("collect"); if($status == 0){ //数据组装,忽略 if(M("collect")->data($collect)->add()){ $msg["info"] = "ok"; $msg["status"] = 1; $this->ajaxreturn($msg); exit; }else{ $msg["info"] = "fail"; $msg["status"] = 1; $this->ajaxreturn($msg); } }else{ //取消收藏 if($db->where($data)->delete()){ $msg["info"] = "ok"; $msg["status"] = 0; $this->ajaxreturn($msg); exit; }else{ $msg["info"] = "fail"; $msg["status"] = 0; $this->ajaxreturn($msg); } }
思路:基本没什么难度,注意细节即可。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持网页设计。