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


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

    一、总结

    一句话总结:存储已经点赞了的用户的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的好处是方便统计,你可以得到任何一个文章的赞动作用户列表,或者很高效的检索某个用户对哪些文章提交过赞动作。不过随着数据的积累,此表可能变的非常庞大,运行效率会逐渐降低

     
  • 相关阅读:
    ASP.Net如何用Cookies保存对象
    MS SQL语句优化
    服务消费者
    [模板]线性筛素数(欧拉筛法)
    luogu4159 迷路 (矩阵加速)
    poj1845 sumdiv (因数的和)
    luogu3674 小清新人渣的本愿 (bitset+莫队)
    luogu3621 城池攻占 (倍增)
    luogu3233 世界树 (虚树)
    bzoj4540 序列 (单调栈+莫队+rmq)
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/9545752.html
Copyright © 2020-2023  润新知