首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何限制用户将mysql值更新到数据库的频率

问如何限制用户将mysql值更新到数据库的频率
EN

Stack Overflow用户
提问于 2016-01-10 17:10:21
回答 4查看 233关注 0票数 1

我的网站上有一个字段,它更新mysql数据库中的一个值。我想使它,所以用户只能更新的价值每3天。我该怎么做呢?

以下是我迄今编写的代码:

代码语言:javascript
复制
<?php
        if(isset($_POST['Update'])){
          $UpdateHWID = $_POST['HWID'];

          $sql = $con->query("UPDATE users SET HWID = '{$UpdateHWID}' where UserID = $User");

          echo "HWID Updated Successfully!";
        }
?>
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2016-01-10 17:51:33

在db (last_update) type=数据中创建新行

代码语言:javascript
复制
//return to sql last_update (select db ...)

$current_Data = date ('Y-m-d');
$current_Data_time = strtotime ($current_Data); //convert data to time
$last_update_p3 = strtotime ("+3day", strtotime($last_update));
$last_update_p3 = strtotime ($last_update_p3);//convert data to time

if($current_Data_time <=$last_update_p3)
{
 $sql = $con->query("UPDATE users SET HWID = '{$UpdateHWID}' , last_update='{$current_Data}'  where UserID = $User");
//update last data with current date 
}
else
{
//It has not gone three days 
}
票数 0
EN

Stack Overflow用户

发布于 2016-01-10 17:12:38

使用mysql中的最后更新字段(上次更新的日期和时间),并在进行更新之前检查它。如果满足您的条件,那么提交更新并更新该时间域,如果没有向用户显示错误的话。

票数 1
EN

Stack Overflow用户

发布于 2016-01-10 18:01:15

根据Pinx0,如果向用户表中添加一个新列(其中包含上次更新的日期),则可以创建一个条件。例如:

代码语言:javascript
复制
ALTER TABLE `users` 
ADD `lastUpdated` DATE NOT NULL;

现在,您可以向现有的查询添加一个条件,如下所示:

代码语言:javascript
复制
UPDATE `users` 
SET `HWID` = '{$UpdateHWID}',
    `lastUpdated` = NOW()
WHERE `UserID` = $User AND 2 < DATEDIFF(CURDATE(),`lastUpdated`);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34708342

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档