Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Назначить время жизни

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
pava77
Отправлено: 28 Марта, 2013 - 21:06:31
Post Id


Гость


Покинул форум
Сообщений всего: 92
Дата рег-ции: Март 2013  


Помог: 0 раз(а)

[+]


Пользователь в списке выбирает время жизни объявления, как прикрепить ето к базе. что бы объявление само удалялось после окончания время жизни, ваще не могу понять как запрос сделать

PHP:
скопировать код в буфер обмена
  1.  
  2. $per = array(
  3.                         '1 неделя'=>'', // здесь секунды 1 недели, ниже аналогично
  4.                         '2 недели'=>'',
  5.                         '1 месяц'=>'',
  6.                         '3 месяца'=>'',
  7.                         '6 месяцев'=>'',
  8.                         '1 год'=>'');
  9.         // теперь надо построить запрос, типа если выбрана 1 неделя, то срок жизни чего то будет сколькото секунд(1 неделя)
  10.                         // мож как то от даты оттлкиваться или временной точки?
  11.  
 
 Top
Мелкий Супермодератор
Отправлено: 28 Марта, 2013 - 21:32:39
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Храните в базе lifeTo - дату, до которой объявление может отображаться.
Соответственно, при добавлении вычисляете крайнюю дату (вплоть до time() + 7*24*60*60 для недели вперёд, но удобнее пользоваться встроенным классом datetime), а при показе - выбираете всё с lifeTo > NOW()


-----
PostgreSQL DBA
 
 Top
pava77
Отправлено: 28 Марта, 2013 - 21:39:45
Post Id


Гость


Покинул форум
Сообщений всего: 92
Дата рег-ции: Март 2013  


Помог: 0 раз(а)

[+]


хм, буду лепить горбатого, мож что и слеплю, спасибо
(Добавление)
PHP:
скопировать код в буфер обмена
  1.  
  2. $per = array(
  3.                         '1 неделя'=>'', //
  4.                         '2 недели'=>'',
  5.                         '1 месяц'=>'',
  6.                         '3 месяца'=>'',
  7.                         '6 месяцев'=>'',
  8.                         '1 год'=>'');
  9. $lifeto =
  10. $week1 =  date('Y-m-d', strtotime('+1 week')) ;
  11. $week2 =  date('Y-m-d', strtotime('+2 week')) ;
  12. $month1 =  date('Y-m-d', strtotime('+1 month')) ;
  13. $month3 =  date('Y-m-d', strtotime('+3 month')) ;
  14. $month6 =  date('Y-m-d', strtotime('+6 month')) ;
  15. $year1 =  date('Y-m-d', strtotime('+1 year')) ;
  16.  
че то ваще не соображаю, дайте кто нить подсказку
 
 Top
vanicon
Отправлено: 28 Марта, 2013 - 23:03:46
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 808
Дата рег-ции: Янв. 2010  
Откуда: Самара


Помог: 17 раз(а)




Example:
PHP:
скопировать код в буфер обмена
  1. $time = 3600 * 24; // 1 day
  2. echo date('Y-m-d H:i:s', time() + $time);

А потом эту дату в бд заносить..


-----
Так было, так есть и так будет
 
 Top
pava77
Отправлено: 28 Марта, 2013 - 23:17:35
Post Id


Гость


Покинул форум
Сообщений всего: 92
Дата рег-ции: Март 2013  


Помог: 0 раз(а)

[+]


немного понятно, а как быть когда доходит до месяца
PHP:
скопировать код в буфер обмена
  1.  
  2. $week1 = 3600 * 24 * 7;
  3.         $week2 = 3600 * 24 * 14;
  4.         $month1 = 3600 * 24 * 30;// как знать 30 или 31 день че надо множить?
  5.  
 
 Top
vanicon
Отправлено: 28 Марта, 2013 - 23:25:21
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 808
Дата рег-ции: Янв. 2010  
Откуда: Самара


Помог: 17 раз(а)




Раз дело до месяца дошло, то тогда лучше через strtotime


-----
Так было, так есть и так будет
 
 Top
pava77
Отправлено: 28 Марта, 2013 - 23:34:53
Post Id


Гость


Покинул форум
Сообщений всего: 92
Дата рег-ции: Март 2013  


Помог: 0 раз(а)

[+]


PHP:
скопировать код в буфер обмена
  1.  
  2. $week1 = date('Y-m-d H:i:s', strtotime("+1 week"));
  3.         $week2 = date('Y-m-d H:i:s', strtotime("+2 week"));
  4.         $month1 = date('Y-m-d H:i:s', strtotime("+1 month"));
  5.         $month3 = date('Y-m-d H:i:s', strtotime("+3 month"));
  6.         $month6 = date('Y-m-d H:i:s', strtotime("+6 month"));
  7.         $year1 = date('Y-m-d H:i:s', strtotime("+12 month"));
  8.  
  9. <p>Период:             
  10.                 <?PHP
  11. $per = array("1 неделя", "2 недели", "1 месяц", "3 месяца", "6 месяцев", "1 год");
  12. $total = count($per);
  13. ?>
  14. <select name="srok" size="1">
  15. <?PHP for($i = 0; $i < $total; $i++) { ?>
  16. <option value="<?PHP echo($per[$i]); ?>"><?PHP echo($per[$i]); ?></option>
  17. <?PHP } ?>
  18. </select><br>
  19.  

как теперь прикрепить переменные к соответсвующим значениям из списка, так что бы после оправки бралось значение например 1 неделя к ней $week2 = date('Y-m-d H:i:s', strtotime("+2 week"));
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB