zoukankan      html  css  js  c++  java
  • 网页中如何实现用户点赞只能点一次

    网页中如何实现用户点赞只能点一次

    一、总结

    一句话总结:存储已经点赞了的用户的id就可以了


    1、文章库增加一个文本型字段,该字段存储已经提交过“赞”动作的用户ID,ID间用特殊字符分割,理论上只要不用数字做分隔符就足以实现要求,不过建议用半角逗号,这样可以直接利用SQL内置的函数进行字符串比对,效率稍高

    2、创建一个库表,存储已经提交过“赞”动作的的用户ID和文章ID,以及你想存储的任何信息,比如提交动作的时间、IP、浏览器类型,屏幕分辨率等等——如果你觉得有用的话

    方法1的好处是如果你不需要进行统计的话,处理起来很方便,整体效率比较高

    方法2的好处是方便统计,你可以得到任何一个文章的赞动作用户列表,或者很高效的检索某个用户对哪些文章提交过赞动作。不过随着数据的积累,此表可能变的非常庞大,运行效率会逐渐降低

    1、网页中实现用户点赞只能点一次的核心是什么?

    存储已经点赞了的用户的id就可以了

    是在文章表中添加一个字段,还是新建一个表,看需求,都可以

    2、数据库多对多的两种实现?

    a、在两个表之间再建立一个关系表

    b、在一个表中添加一个字段,这个字段批量存储关联的字段,就比如:

    网页中实现用户点赞只能点一次的方法中:文章库增加一个文本型字段,该字段存储已经提交过“赞”动作的用户ID,ID间用特殊字符分割,理论上只要不用数字做分隔符就足以实现要求,不过建议用半角逗号,这样可以直接利用SQL内置的函数进行字符串比对,效率稍高

    二、网页中如何实现用户点赞只能点一次

    你这个想法一般有两种途径实现

    1、文章库增加一个文本型字段,该字段存储已经提交过“赞”动作的用户ID,ID间用特殊字符分割,理论上只要不用数字做分隔符就足以实现要求,不过建议用半角逗号,这样可以直接利用SQL内置的函数进行字符串比对,效率稍高

    2、创建一个库表,存储已经提交过“赞”动作的的用户ID和文章ID,以及你想存储的任何信息,比如提交动作的时间、IP、浏览器类型,屏幕分辨率等等——如果你觉得有用的话

    方法1的好处是如果你不需要进行统计的话,处理起来很方便,整体效率比较高

    方法2的好处是方便统计,你可以得到任何一个文章的赞动作用户列表,或者很高效的检索某个用户对哪些文章提交过赞动作。不过随着数据的积累,此表可能变的非常庞大,运行效率会逐渐降低

     
  • 相关阅读:
    java处理图片压缩、裁剪
    List按对象元素自定义排序
    List和数组汉字简单排序(转)
    欢迎访问我的个人博客,部分文章迁移
    Java资源免费分享,每日一更新,找到你心仪的吧
    今年的校招,Java好拿offer吗?
    【拥抱大厂系列】几个面试官常问的垃圾回收器,下次面试就拿这篇文章怼回去!
    2019,我的这一年,在校研究生做到年入20W,另送我的读者2000元现金红包
    深入理解Java虚拟机-如何利用VisualVM对高并发项目进行性能分析
    深入理解Java虚拟机-常用vm参数分析
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/9545752.html
Copyright © 2011-2022 走看看