在数据库中 5 年后删除用户
Delete user after 5 years in database
我的数据库中有一个列,在我的用户数据库中有一个插入,我想在插入 5 年后删除一个用户,
我想用 php 做这个,如果属性有效,我该如何做?
插件是例如2022-03-18 13:18:10。
为了更好地了解我想要的内容,我只是 echo'd delete 而不是数据库删除字符串。只是我无法弥补的if属性在插入5年后删除用户。我现在的代码为例:
if($user['inserton'] > 5 years){
"echo delete"; }
您必须在 if 条件之后执行删除查询,代码将如下所示:
if($user['inserton'] > 5 years){
$sql = "DELETE FROM User WHERE id= '$UserId'";
if ($conn->query($sql) === TRUE) {
echo "Record deleted successfully";
} else {
echo "Error deleting record: " . $conn->error;
}
}
如果您的数据库中有一列指示用户的插入日期和时间,最好的方法是从那里删除所有用户:
DELETE FROM User WHERE 'createdAt' < NOW() - INTERVAL 5 Year;
但是如果你想删除用户的id,那么你应该检查PHP里面的时间:
if((new DateTime($user['inserton']))->modify("+5 year") < new DateTime()) {
$query = "DELETE FROM User WHERE id = ?;";
$con = new mysqli($host, $username, $pass, $database); //database connection
$stmt = $con->prepare($query);
$stmt->bind_param('i', $userId);
$stmt->execute();
$stmt->close();
}
注意:第一种方法会删除数据库中所有超过 5 年的用户,而第二种方法只会删除您从数据库中检索到的用户。
这是代码
<?php
$date1 = date_create($user['inserton']);
$date2 = date_create(date());
$diff = date_diff($date1,$date2);
$diff = $diff->format("%y");
if($diff > 5){
mysqli_query($con,"DELETE FROM User WHERE id= '$UserId'");
}else{
echo "not complete 5 years ";
}
?>
我的数据库中有一个列,在我的用户数据库中有一个插入,我想在插入 5 年后删除一个用户,
我想用 php 做这个,如果属性有效,我该如何做?
插件是例如2022-03-18 13:18:10。 为了更好地了解我想要的内容,我只是 echo'd delete 而不是数据库删除字符串。只是我无法弥补的if属性在插入5年后删除用户。我现在的代码为例:
if($user['inserton'] > 5 years){
"echo delete"; }
您必须在 if 条件之后执行删除查询,代码将如下所示:
if($user['inserton'] > 5 years){
$sql = "DELETE FROM User WHERE id= '$UserId'";
if ($conn->query($sql) === TRUE) {
echo "Record deleted successfully";
} else {
echo "Error deleting record: " . $conn->error;
}
}
如果您的数据库中有一列指示用户的插入日期和时间,最好的方法是从那里删除所有用户:
DELETE FROM User WHERE 'createdAt' < NOW() - INTERVAL 5 Year;
但是如果你想删除用户的id,那么你应该检查PHP里面的时间:
if((new DateTime($user['inserton']))->modify("+5 year") < new DateTime()) {
$query = "DELETE FROM User WHERE id = ?;";
$con = new mysqli($host, $username, $pass, $database); //database connection
$stmt = $con->prepare($query);
$stmt->bind_param('i', $userId);
$stmt->execute();
$stmt->close();
}
注意:第一种方法会删除数据库中所有超过 5 年的用户,而第二种方法只会删除您从数据库中检索到的用户。
这是代码
<?php
$date1 = date_create($user['inserton']);
$date2 = date_create(date());
$diff = date_diff($date1,$date2);
$diff = $diff->format("%y");
if($diff > 5){
mysqli_query($con,"DELETE FROM User WHERE id= '$UserId'");
}else{
echo "not complete 5 years ";
}
?>