zoukankan      html  css  js  c++  java
  • 点赞设计

    需求:对某一个试题 或者 某一个话题 或者 某一个新闻 点赞 ,每个人只能点赞一次,第一次点赞的时候 增加1 再一次点赞的时候 就取消点赞

    设计:

      1.用户点赞 必须要登陆才可以,这样就可以获取该用户的uid;

      2.设计数据表

        被点赞的记录表 ,以试题为例:

        question 表

        tid  --------题目id

        question -----问题题目

        answer -------问题答案

        --------------------------------------------

        zan  表

        id 主键

        tid  被赞的tid

        uid  点赞的用户

        is_delete  点赞状态  (0点赞,1 取消;默认为0)

      3.代码

      

     1     /**
     2      * @desc 点赞方法
     3      * @author wzh
     4      * @version 1.0
     5      * @date 2017-02-18
     6      * @return int
     7      */
     8     public function setZan($uid = 0,$tid = 0){
     9         $uid = (int) $uid;
    10         $tid = (int) $tid;
    11         if($uid == 0 || $tid == 0){
    12             return false;
    13         }
    14         
    15         //先查看该用户是否已经点赞,如果没有点赞 则增加一条记录,如果已经点赞,查看点赞的状态is_delete,如果该值为0 则设置为1,如果为1则设置为0;
    16         $sql = "select id,is_delete from zan where uid = '$uid' and tid = '$tid' ";
    17         $zanInfo = $db -> getRow($sql);
    18         if(empty($zanInfo)){
    19             $insert = array('uid' => $uid,'tid' => $tid);
    20             $res = $db -> insert($insert);
    21             
    22         }else{
    23             if($zanInfo['is_delete'] == 1){
    24                 $update = array('is_delete' => 0);
    25             }else{
    26                 $update = array('is_delete' => 1);
    27             }
    28             $condition = array('id' => $zanInfo['id']);
    29             $res = $db -> update('zan',$update,$condition);
    30         }
    31         if(!$res){
    32             return false;
    33         }
    34         
    35         $count = $db -> getCount("select count(*) from zan where tid = $tid and is_delete = 0 ");
    36         return $count;
    37         
    38         
    39     }

      4.总结:以上仅仅为解决思路,并不完整;可以再次基础上做扩展;详细交流请qq 646943067 备注 为 博客园

  • 相关阅读:
    SGU 176.Flow construction (有上下界的最大流)
    POJ 2391.Ombrophobic Bovines (最大流)
    poj 1087.A Plug for UNIX (最大流)
    poj 1273.PIG (最大流)
    POJ 2112.Optimal Milking (最大流)
    SGU 196.Matrix Multiplication
    SGU 195. New Year Bonus Grant
    关于multicycle path
    ppt做gif动图
    codeforces 598A Tricky Sum
  • 原文地址:https://www.cnblogs.com/ailingfei/p/6413031.html
Copyright © 2011-2022 走看看