【小编推荐】视频网站中常用的关注和取消关注(ajax+thinkphp+mysql)实现

2016-07-30   |   发布者:梁国芳   |   查看:3320次

php
 这个是html内容 css样式就不贴了

如果已关注就显示实心桃心  否则 显示虚心桃心
QQ截图20160730181440QQ截图20160730181449
<a class="guan" href="javascript:;">
    <if condition="$gu'">
      <b class="guanzhu_down"></b>
   <else />
     <b class="guanzhu_start"></b>
</if>                   
    <span>关注</span>
</a>

这个是js部分
    获取关注人数的内容,字符串转换整型,获得当前关注人数
    tot=$('.tot').html();
    tot=parseInt(tot);
    var x;
 $('.guan').click(function(){
 
           //获取当前关注标签的class ,判断以后分别关注跟取消关注
           //我这个是一个课程网站的关注 需要携带课程id
            xx=$(this).find('b').attr('class');
            //未关注则进行关注
            if(xx=='guanzhu_start'){
                $.post("{:U('guan')}",{'courseid':courseid},function(r){
                    根据后面的php函数function guan()操作数据库,当关注成功是返回1;前台获取到1以后给当前关注人数加1;
                    if(r==1){
                        if(x){
                            $('.tot').html((x+1)+"人");
                            
                            x=x+1;
                        }else{
                            $('.tot').html((tot+1)+"人");
                            
                            x=tot+1;
                           
                        }
                        
                    }
                });
           //已关注就取消关注
         根据后面的php函数function qu()操作数据库,当取消关注成功是返回1;前台获取到1以后给当前关注人数减1;
            }else if(xx=='guanzhu_down'){
                $.post("{:U('qu')}",{'courseid':courseid},function(r){
                    if(r==1){
                        if(x){
                            $('.tot').html((x-1)+"人");
  
                            x=x-1;
                        }else{
                            $('.tot').html((tot-1)+"人");
                           
                            x=tot-1;
                           
                        }
                        
 
                    }
            )};
 
 public function guan(){
        $courseid=$_POST['courseid'];//从前台获取的课程id
        $userid=$_SESSION['userid'];//$_SESSION中获取用户id
        $time=time();
        $obj=M();
        增加关注
        $sql="insert into weixin_follow (userid,courseid,time) values('$userid','$courseid','$time')";
        $row=$obj->execute($sql);
        if($row){
       查询原来课程关注数并加一
            $sql1="selec focuse from weixin_course_class wher cid='$courseid'";
            $focuse=$obj->query($sql1);
            $focuse=$focuse[0][focuse];
            $tot=$focuse+1;
            $sql2="updat weixin_course_class set focuse='$tot' wher cid='$courseid'";
            $ftot=$obj->execute($sql2);
            echo 1;
        }
    }
    public function qu(){
        
        $courseid=$_POST['courseid'];//从前台获取的课程id
        $userid=$_SESSION['userid'];//$_SESSION中获取用户id
        $obj=M(); 
       取消增加关注
        $sql="delet from  weixin_follow wher userid='$userid' and courseid='$courseid'";
        $row=$obj->execute($sql);
         if($row){
         查询原来课程关注数并减一
            $sql1="selec focuse from weixin_course_class wher cid='$courseid'";
            $focuse=$obj->query($sql1);
            $focuse=$focuse[0][focuse];
            $tot=$focuse-1;
            $sql2="updat weixin_course_class set focuse='$tot' wher cid='$courseid'";
            $ftot=$obj->execute($sql2);
            echo 1;
        }
    }