繁体   English   中英

限制每分钟在我的mysql数据库中的搜索

[英]Limit searches per minute in my mysql database

我有一个提供公共数据库的网站,可以通过简单的表格进行搜索。 我正在使用PDO进行查询。
我曾尝试过使用Google,但感觉好像缺少正确的关键字来帮助自己。

我想将每个用户可以进行的搜索限制为每分钟5次搜索。 什么是省事省力的正确方法? 我不需要高安全性的解决方案,可以将一切放慢一些。

有这个名字吗? 我可以搜索什么?

// Create a session variable called something like this after you start the session:
$_SESSION['user_start'] = time();

// Then when they get to submitting the payment, just check whether they're within the 5 minute window
if (time() - $_SESSION['user_start'] < 300) { // 300 seconds = 5 minutes
    // they're within the 5 minutes so save the details to the database
} else {
    // sorry, you're out of time
   unset($_SESSION['user_start']); // and unset any other session vars for this task
}

实际上,您不能从MySQL的设置中限制它。 但是您可以使用PHP避免它。 您应该为每个用户设置一个SESSION并设置一个名为“ SearchTimes”的参数。 如果它是5,则为每个搜索加1,停止搜索操作。 您可以使用IP地址阻止功能为其添加更多安全性。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM