我将用户注册日期保存在mysql数据库的signupdate
列中,然后在该日期上添加2天并将其保存在expiredate
列中。
一切正常。
我需要知道,如果达到expiredate
日期,如何删除用户帐户?
我知道这可以通过cron作业来实现,但是我很难理解这个概念。
以下是我如何在mysql数据库中保存expiredate和signupdate:
$date = date ( 'Y-m-d' );
$newdate = strtotime ( '+2 days' , strtotime ( $date ) ) ;
$newdate = date ( 'Y-m-d' , $newdate );
$stmt = mysqli_prepare(
$db_conx,
"INSERT INTO users (expiredate, signupdate) VALUES (?, now())"
);
//after validation, of course
mysqli_stmt_bind_param($stmt, "s", $newdate);
mysqli_stmt_execute($stmt);
if (mysqli_affected_rows($db_conx))
{
mysqli_stmt_close($stmt);
//update was successful
$id = mysqli_insert_id($db_conx);
}
有人能给我指点一下吗?
提前谢谢。
最佳答案
类似于:
DELETE FROM `users` WHERE `expiredate` < DATE_SUB(NOW(), INTERVAL X DAY)
但是,首先使用where条件进行选择,看看它是否选择了您期望的内容。然后我建议使用
active
字段并禁用帐户-这样就可以取消删除某人。