php 浏览量 防刷,初学者:如何用PHP 代码防止刷 点击量?

2023-10-07 08:40

本文主要是介绍php 浏览量 防刷,初学者:如何用PHP 代码防止刷 点击量?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

初学者:如何用PHP 代码防止刷 点击量?

关注:225  答案:6  mip版

解决时间 2021-01-25 18:13

e6cb1a03ad541b3098697807b7bf1798.png

提问者耍硪ミ倪配么

2021-01-25 03:25

我的页面 每点击一次, 数据库中 的点击量 就会加一,

如果同一用户不断的刷新 ,那么 点击量就不断升

如何用php代码 防止刷点击量 ,求 代码

最佳答案

e6cb1a03ad541b3098697807b7bf1798.png

二级知识专家闪光的男人

2021-01-25 04:41

可以用session,你可以在用户第一次访问这个页面的时候在session中放置一个标识变量,用以标识这个操作是否执行过了,

session_start ();

if(isset($SESSION["flag"]))

{

执行更新点击量的操作代码

$SESSION["flag"]=1

}

访问过一次这个页面后,以后在访问这个页面或刷新页面就不会执行操作了,当然,浏览器关闭后session会失效,以后重新打开浏览器访问这个页面还是会执行一次更新点击量的操作,如果只能在一台电脑上执行一次操作,还是记录操作的电脑的IP地址,以后判断IP地址是否已经被记录过来决定是否执行操作

whq_0614,用户同样可以清楚cookie,方法就没有十全十美的,你要考虑这个就必然要舍弃那个

login.jsp:

String username = "";

//从客户端读取硬盘中的cookie文件

Cookie[] cookies = request.getCookies();

if(cookies == null){

username = "";

}

else{

for (int i = 0; i < cookies.length; i++){

if ("USERNAME".equalsIgnoreCase(cookies[i].getName())){

username = cookies[i].getValue();

}

}

%>

用户名

密 码

LoginAction:

//将正确userName放入c1对象,并用"USERNAME"做key标识

Cookie c1= new Cookie("USERNAME",logindto.getUsername());

//如果不设置时间,则cookie为会话cookie,不写入客户端硬盘

c1.setMaxAge(60*60*24);

response.addCookie(c1);

全部回答

e6cb1a03ad541b3098697807b7bf1798.png

1楼长街听风

2021-01-25 08:28

加一个刷新时间 比如每5秒才可以刷新

再加一个同一个IP刷新不算点击量

e6cb1a03ad541b3098697807b7bf1798.png

2楼雨落轻尘

2021-01-25 07:33

可以用session,你可以在用户第一次访问这个页面的时候在session中放置一个标识变量,用以标识这个操作是否执行过了, session_start (); if(isset($session["flag"])) { 执行更新点击量的操作代码 $session["flag"]=1 } 访问过一次这个页面后,以后在访问这个页面或刷新页面就不会执行操作了,当然,浏览器关闭后session会失效,以后重新打开浏览器访问这个页面还是会执行一次更新点击量的操作,如果只能在一台电脑上执行一次操作,还是记录操作的电脑的ip地址,以后判断ip地址是否已经被记录过来决定是否执行操作 whq_0614,用户同样可以清楚cookie,方法就没有十全十美的,你要考虑这个就必然要舍弃那个 login.jsp:

用户名

密 码

e6cb1a03ad541b3098697807b7bf1798.png

3楼可爱暴击

2021-01-25 07:06

2楼的方法不行,关了浏览器再打开还可以刷。

用COOKIE,当他点击的时候会创建一个COOKIE,有效时间是24小时,然后写判断如果那个COOKIE存在的话,不加点击率。这样等一天过去之后,他才可以点加一。

e6cb1a03ad541b3098697807b7bf1798.png

4楼你的偏见

2021-01-25 06:02

还有就是用cookie,和session运行机制差不多,不过这种方法有一个缺点,当用户清除cookie和session后照样可以添加,还有一种方法就是你在数据库里建一个表,用来保存用户的ip,用户每次点一下时,先判断ip是否已存在,如果存在则不加1,否则加1。

e6cb1a03ad541b3098697807b7bf1798.png

5楼白胡子大佬

2021-01-25 05:56

可以用session,你可以在用户第一次访问这个页面的时候在session中放置一个标识变量,用以标识这个操作是否执行过了,

session_start ();

if(isset($SESSION["flag"]))

{

执行更新点击量的操作代码

$SESSION["flag"]=1

}

访问过一次这个页面后,以后在访问这个页面或刷新页面就不会执行操作了,当然,浏览器关闭后session会失效,以后重新打开浏览器访问这个页面还是会执行一次更新点击量的操作,如果只能在一台电脑上执行一次操作,还是记录操作的电脑的IP地址,以后判断IP地址是否已经被记录过来决定是否执行操作

whq_0614,用户同样可以清楚cookie,方法就没有十全十美的,你要考虑这个就必然要舍弃那个

我要举报

如以上问答内容为低俗/色情/暴力/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!

→点此我要举报以上信息!←

推荐资讯

大家都在看

这篇关于php 浏览量 防刷,初学者:如何用PHP 代码防止刷 点击量?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/157264

相关文章

活用c4d官方开发文档查询代码

当你问AI助手比如豆包,如何用python禁止掉xpresso标签时候,它会提示到 这时候要用到两个东西。https://developers.maxon.net/论坛搜索和开发文档 比如这里我就在官方找到正确的id描述 然后我就把参数标签换过来

poj 1258 Agri-Net(最小生成树模板代码)

感觉用这题来当模板更适合。 题意就是给你邻接矩阵求最小生成树啦。~ prim代码:效率很高。172k...0ms。 #include<stdio.h>#include<algorithm>using namespace std;const int MaxN = 101;const int INF = 0x3f3f3f3f;int g[MaxN][MaxN];int n

【测试】输入正确用户名和密码,点击登录没有响应的可能性原因

目录 一、前端问题 1. 界面交互问题 2. 输入数据校验问题 二、网络问题 1. 网络连接中断 2. 代理设置问题 三、后端问题 1. 服务器故障 2. 数据库问题 3. 权限问题: 四、其他问题 1. 缓存问题 2. 第三方服务问题 3. 配置问题 一、前端问题 1. 界面交互问题 登录按钮的点击事件未正确绑定,导致点击后无法触发登录操作。 页面可能存在

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能

代码随想录冲冲冲 Day39 动态规划Part7

198. 打家劫舍 dp数组的意义是在第i位的时候偷的最大钱数是多少 如果nums的size为0 总价值当然就是0 如果nums的size为1 总价值是nums[0] 遍历顺序就是从小到大遍历 之后是递推公式 对于dp[i]的最大价值来说有两种可能 1.偷第i个 那么最大价值就是dp[i-2]+nums[i] 2.不偷第i个 那么价值就是dp[i-1] 之后取这两个的最大值就是d

pip-tools:打造可重复、可控的 Python 开发环境,解决依赖关系,让代码更稳定

在 Python 开发中,管理依赖关系是一项繁琐且容易出错的任务。手动更新依赖版本、处理冲突、确保一致性等等,都可能让开发者感到头疼。而 pip-tools 为开发者提供了一套稳定可靠的解决方案。 什么是 pip-tools? pip-tools 是一组命令行工具,旨在简化 Python 依赖关系的管理,确保项目环境的稳定性和可重复性。它主要包含两个核心工具:pip-compile 和 pip

D4代码AC集

贪心问题解决的步骤: (局部贪心能导致全局贪心)    1.确定贪心策略    2.验证贪心策略是否正确 排队接水 #include<bits/stdc++.h>using namespace std;int main(){int w,n,a[32000];cin>>w>>n;for(int i=1;i<=n;i++){cin>>a[i];}sort(a+1,a+n+1);int i=1

html css jquery选项卡 代码练习小项目

在学习 html 和 css jquery 结合使用的时候 做好是能尝试做一些简单的小功能,来提高自己的 逻辑能力,熟悉代码的编写语法 下面分享一段代码 使用html css jquery选项卡 代码练习 <div class="box"><dl class="tab"><dd class="active">手机</dd><dd>家电</dd><dd>服装</dd><dd>数码</dd><dd

生信代码入门:从零开始掌握生物信息学编程技能

少走弯路,高效分析;了解生信云,访问 【生信圆桌x生信专用云服务器】 : www.tebteb.cc 介绍 生物信息学是一个高度跨学科的领域,结合了生物学、计算机科学和统计学。随着高通量测序技术的发展,海量的生物数据需要通过编程来进行处理和分析。因此,掌握生信编程技能,成为每一个生物信息学研究者的必备能力。 生信代码入门,旨在帮助初学者从零开始学习生物信息学中的编程基础。通过学习常用

husky 工具配置代码检查工作流:提交代码至仓库前做代码检查

提示:这篇博客以我前两篇博客作为先修知识,请大家先去看看我前两篇博客 博客指路:前端 ESlint 代码规范及修复代码规范错误-CSDN博客前端 Vue3 项目开发—— ESLint & prettier 配置代码风格-CSDN博客 husky 工具配置代码检查工作流的作用 在工作中,我们经常需要将写好的代码提交至代码仓库 但是由于程序员疏忽而将不规范的代码提交至仓库,显然是不合理的 所