php防止重复登录,php如何防止重复提交

本文目录一览:

Thinkphp5防止某个IP多次登录的方法

//昨天写的思路不对,重新写….

/**

*检查IP是否重复登录多次

*/

public function check_ip(){

//获取ip

$login_ip=$_SERVER[“REMOTE_ADDR”];

$login_time=date(“Y-m-d”,time());

if(Cache::get(‘cache_login_data’)==false){

//如果ip换成为false,那么创建一个缓存,并赋值第一个

$login_data[0]=[‘login_ip’=$login_ip,’login_time’=$login_time];

Cache::set(‘cache_login_data’,$login_data);

}else{

//如果有cache,那么将这条数据加入到缓存中最后一条去

$cache_login_data=Cache::get(‘cache_login_data’);

$count=0;

foreach($cache_login_dataas$k=$v){

//如果当前缓存中的值含有当前ip和时间,那么计算当前时间内登录次数

if($v[‘login_time’]==$login_time$v[‘login_ip’]==$login_ip){

$count++;

if($count10){

//当前ip登录超过10次

$this-error(“你登录超过了10次,请不要再来登了…”,”Login/index”);

}else{

//当前时间内有该IP登陆过,但是没有超过10次

$cache_login_data[count($cache_login_data)+1]=[‘login_ip’=$login_ip,’login_time’=$login_time];

Cache::set(‘cache_login_data’,$cache_login_data);

}

}else{

//当前时间内,该IP没有登陆过

$cache_login_data[count($cache_login_data)+1]=[‘login_ip’=$login_ip,’login_time’=$login_time];

Cache::set(‘cache_login_data’,$cache_login_data);

}

}

}

}

php如何防止程序重复执行

在用户表中加四个字段,一个记录是否登录,一个记录登录随机码(每次登录不一样),一个记录最后登录时间,一个记录登录ip,登录后保存user_id及登录随机码的session,在全局的配置文件中写一个方法.每次访问一个页面都去查询用户表的登录随机码及ip,如果发现ip或随机码不一致(因为同一局域网获取的ip可能一样,所以不能单纯的判断ip,加上验证随机码),则弹出提示消息,并清空session,强迫下线.

php中如何防止重复登录?php中有没有类似struts2中application的东西?

application php 中没有

我常用的方法是这个:

1、登陆状态通过 session 来记录

2、将 session 数据记录到数据库里面

3、登陆时候,检查session 库中是否已经登陆.这个地方你自己考虑如何判定

4、退出是清掉 session 库中对应的数据

原创文章,作者:QIHL,如若转载,请注明出处:https://www.506064.com/n/134193.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
QIHL的头像QIHL
上一篇 2024-10-04 00:04
下一篇 2024-10-04 00:04

相关推荐

  • PHP和Python哪个好找工作?

    PHP和Python都是非常流行的编程语言,它们被广泛应用于不同领域的开发中。但是,在考虑择业方向的时候,很多人都会有一个问题:PHP和Python哪个好找工作?这篇文章将从多个方…

    编程 2025-04-29
  • PHP怎么接币

    想要在自己的网站或应用中接受比特币等加密货币的支付,就需要对该加密货币拥有一定的了解,并使用对应的API进行开发。本文将从多个方面详细阐述如何使用PHP接受加密货币的支付。 一、环…

    编程 2025-04-29
  • 使用PHP foreach遍历有相同属性的值

    本篇文章将介绍如何使用PHP foreach遍历具有相同属性的值,并给出相应的代码示例。 一、基础概念 在讲解如何使用PHP foreach遍历有相同属性的值之前,我们需要先了解几…

    编程 2025-04-28
  • 如何防止Python培训骗局

    Python这门语言被誉为是一门容易学习但却功能强大的编程语言,受到了越来越多人的追捧和关注。但是,Python市场上还是存在一些不良的培训机构和骗局,下面从多个方面探讨如何防止P…

    编程 2025-04-28
  • PHP获取301跳转后的地址

    本文将为大家介绍如何使用PHP获取301跳转后的地址。301重定向是什么呢?当我们访问一个网页A,但是它已经被迁移到了另一个地址B,此时若服务器端做了301重定向,那么你的浏览器在…

    编程 2025-04-27
  • PHP登录页面代码实现

    本文将从多个方面详细阐述如何使用PHP编写一个简单的登录页面。 1. PHP登录页面基本架构 在PHP登录页面中,需要包含HTML表单,用户在表单中输入账号密码等信息,提交表单后服…

    编程 2025-04-27
  • PHP与Python的比较

    本文将会对PHP与Python进行比较和对比分析,包括语法特性、优缺点等方面。帮助读者更好地理解和使用这两种语言。 一、语法特性 PHP语法特性: <?php // 简单的P…

    编程 2025-04-27
  • MyBatis如何防止SQL注入

    MyBatis是一款开源的持久层框架,它可以简化Java应用程序中的数据持久化过程,并提供了许多有用的功能。然而,安全问题一直是Web应用程序的一大挑战,其中最严重的问题之一是SQ…

    编程 2025-04-25
  • PHP版本管理工具phpenv详解

    在PHP项目开发过程中,我们可能需要用到不同版本的PHP环境来试验不同的功能或避免不同版本的兼容性问题。或者我们需要在同一台服务器上同时运行多个不同版本的PHP语言。但是每次手动安…

    编程 2025-04-24
  • PHP数组去重详解

    一、array_unique函数 array_unique是php中常用的数组去重函数,它基于值来判断元素是否重复,具体使用方法如下: $array = array(‘a’, ‘b…

    编程 2025-04-24

发表回复

登录后才能评论