0

我需要使用 IP 做一个块系统,因为我的旧系统失败了(实际上并没有失败,请查看此链接以获取更多信息Stackoverflow - Cookies

好吧,我知道如何获取用户 IP,当然也可以将其存储在数据库中。我的疑问是如何指定到期时间以及如何在时间到期后将其从数据库中删除,当然是自动删除。例如...

  • 用户发表评论
  • 在数据库中存储用户 IP 30 秒
  • 用户在 30 秒到期之前无法再次发表评论
  • 过期时间后自动从数据库中删除IP
  • 用户现在可以再次发表评论

对不起我的英语不好。如果有不清楚的地方,请告诉我,我会解释得更好。

@编辑

好吧,恢复所有这些,我的疑问是:

  • 我如何在数据库(字段和字段上的数据)上执行过期时间(例如,30 秒)。
  • 如何删除已过期的行。
4

1 回答 1

0

MySQL

INSERT INTO `_table` (`ip_address`, `reason`, `expire`) VALUES ('10.10.10.10', 'I don\'t like what you did.', '1362268800');

该记录应该在数据库表中,我已将其设置为在 2 月 31 日到期。

//PHP Checking code.
$query = mysql_query("SELECT `reason` FROM `_table` WHERE `ip_address` = '".$_SERVER["REMOTE_ADDR"]."' AND `expire` > UNIX_TIMESTAMP() LIMIT 1");

if (mysql_num_rows($query)){
    $row = mysql_fetch_assoc($query);
    echo $row["reason"];
} //end if.

上面会主动检查是否找到了观众的 IP 地址,然后会回显原因。

于 2013-01-31T12:53:17.307 回答