php mysql帐户订阅到期

时间:2018-01-22 10:09:13

标签: php mysql

我有一个用户的mysql数据库,它有一个订阅到期字段(sub_expire),它是目前的时间戳格式,还有另一个字段(active),它是enum yes或no,yes是允许登录,如果没有拒绝登录。< / p>

我如何使用php检查是否已达到订阅到期日期或已经通过用户尝试登录,然后将活动字段更新为no以便用户无法登录。

非常感谢提前

1 个答案:

答案 0 :(得分:0)

如果用户$username,则会检查sub_expire是否小于当前时间/日期。如果是,则active设置为no 正如@AgeDeO所提到的,您不应该保存activesub_expire,因为两者具有相同的用法

$SQL_CONN = mysqli ("host",
                    "user",
                    "password",
                    "dbname",
                    "port");

$sqlStm = $SQL_CONN->prepare("select u.user_id, u.sub_expire < NOW from users u where u.name = ?;");
$sqlStm->bind_param ("s", $username);

$sqlStm->execute();

$sqlStm->store_result();

$sqlStm->bind_result($id, $active);

$sqlStm->free_result();
$sqlStm->close();

if(!$active) {

  $sqlStm = $SQL_CONN->prepare("update users set active =`no` WHERE user_id = ?");
  $sqlStm->bind_param ("i", $user_id);

  $sqlStm->execute();
  $sqlStm->free_result();
  $sqlStm->close();
}