@Suleimanov_Ismar

Как сделать ограниченное время хранения?

Здрасти всем.
Есть задача, ограниченное время хранения, ограничение выбирает сам пользователь.
Н-р: 2 инпута, в одно пишем число а в другое выбираем из выпадающего списка тип хранения
2 | часа (минут, дней, неделя)
Задачу с хранением на несколько дней и недель сделал.
а вот как сделать 1 и 2-е? как сделать хранение на несколько часов/минут?
вот как я сделал хранение дней
где
$row_c['load_date'] - время загрузки файла.
$current_d - нынешнее время.
$row_c['time_save'] - время хранения выбранное пользователем.

$count_date = $row_c['load_date'] - $current_d;

				$difference = intval(abs(strtotime($row_c['load_date']) - strtotime($current_d))); 

				// Количество дней 
					$finish_c_d = (int)$int_count_date = $difference / (3600 * 24);
							
					// Проверка и удаление
					// Проверка дней
					if ($finish_c_d > $row_c['time_save']) {
						echo "время истекло, данные удалились! id= ".$row_c['id'];
					}else{echo "Рано удалять! id= ".$row_c['id'];}
					
				}
  • Вопрос задан
  • 120 просмотров
Решения вопроса 2
Stalker_RED
@Stalker_RED
При сохранении данных указываете дату, после которой данные должны быть удалены.

$keep_until = date("Y-m-d H:i:s", strtotime("+1 week"));
$query = "INSERT INTO table_name (data, keep_until) VALUES ('$user_data', '$keep_until')"; // да, лучше использовать PDO

С некоторым интервалом запускайте "сборщик мусора", который будет делать запрос типа
DELETE FROM table_name WHERE keep_until < now()
Ответ написан
@Suleimanov_Ismar Автор вопроса
Сделал так:
$time = date($load_time);
				  	$time2=$row_c['time_save']." hours"; 

					$vychislenie_save_time = date('H:i:s', strtotime($time2, strtotime($time)));
					$current_now_t = date('H:i:s', time());

					echo $vychislenie_save_time."--------".$row_c['id']."	<br>";
					echo $current_now_t."current time -------<br>";

					if ($current_now_t > $vychislenie_save_time) {
						echo "время истекло, данные удалились! id= ".$row_c['id'];
					}else{echo "Рано удалять! id= ".$row_c['id'];}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы