php如何实现收藏功能

  • 来源:网络
  • 更新日期:2020-09-28

摘要:php实现收藏功能的方法:首先创建前台代码,实现登录界面;然后通过if语句实现收藏功能;最后在PHP后台中实现收藏的处理功能即可。推荐:《PHP视频教程》 php实现收藏功能这是资料库

php实现收藏功能的方法:首先创建前台代码,实现登录界面;然后通过if语句实现收藏功能;最后在PHP后台中实现收藏的处理功能即可。

推荐:《PHP视频教程》

php实现收藏功能

这是资料库表

话不多说上代码

前台

<script>
    $(function(){
      $('#sc').click(function(){
          var gid=$(this).attr('data-id');
          var data={
            gid:gid
          };
          $.ajax({
            url:"{:U('Goods/collect_add')}", 
            type:"post",
            data:data,
            success:function(data){
              // window.clearInterval(timer);
                            if(data==1){
                                window.location.href="{:U('Public/login')}"; //登录界面
                            }else {
                                if(data==2){
                                    $('#sc').css({
                                        'background-color':'white',
                                        'color':'#00ccff',
                                    });
                                    $('#sc_words').html(
                                        '收藏'
                                    );
                                }else if(data==3){
                                    $('#sc').css({
                                        'background-color':'#00ccff',
                                        'color':'white',
                                    });
                                    $('#sc_words').html(
                                        '已收藏'
                                    );
                                }else{
                                    alert(data);
                                }
                            }
            },
            error:function(){
              alert('請求失敗');
            }
          });
      });
    })
</script>

html部分

      <div id="sc" data-id="{$detail.id}" class="in_right">
        <p id="sc_words">收藏</p>
      </div>

php后台处理

  // 商品收藏   1 代表未登入 2代表取消收藏  3 代表 收藏成功 
    public function collect_add(){
      if(empty(session('uid'))){
        echo '1';
      }else {
        $collect=M('collect');
        $gid=I('post.gid');
        //先確定是否已收藏
        $map['gid']=$gid;
        $map['uid']=session('uid');
        $data=$collect->where($map)->find();
        if($data){
          if($data['status']==1){
            $collect->where('id='.$data['id'])->setField('status',0);
            echo '2';
          }else{
            $collect->where('id='.$data['id'])->setField('status',1);
            echo '3';
          }
        }else{
          if($collect->create()){
            $collect->gid=$gid;
            $collect->create_time=get_date();
            $collect->uid=session('uid');
            $collect->status=1;
            $collect->add();
            echo '3';
          }else{
            echo '伺服器出錯,請重試!';
          }
        }
      }
    }