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]   

> Без описания
FRIK
Отправлено: 20 Декабря, 2010 - 09:48:01
Post Id


Частый гость


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


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

[+]


PHP:
скопировать код в буфер обмена
  1.  
  2. $userow=mysql_fetch_array(mysql_query("SELECT * FROM `users` WHERE `login`='".$clogin."' AND `passw`='".$cpassw."'"));
  3. $time = date('H:i');
  4. $date = date("d.m.Y");
  5. list($d,$m,$y) = explode('.',$date);
  6. $day = $d-1;
  7. list($d2,$m2,$y2) = explode('.',$userow[8]);
  8. if( $d2 == $day & $m == $m2 & $y == $y2){
  9. echo("Работает");
  10. }
  11. else{
  12. echo("Не работает");
  13. }


Мне надо что бы каждый 24 часа можно было только сделать то действие что мне надо месяца день я нашел как проверить а как проверить время, если время находится в таблице $userow[7]
не могу понять как это сделать подскажите
 
 Top
Viper
Отправлено: 20 Декабря, 2010 - 10:40:35
Post Id



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


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


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




Опишите проблему. Что именно не работает? В каком формате время в БД?


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
FRIK
Отправлено: 20 Декабря, 2010 - 10:47:50
Post Id


Частый гость


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


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

[+]


да в обычном формате H:i но я похоже разобрался надо записывать в базу время в формате unix и if(время выполнение которое было выполнено ранее<03600*24)
вроде так
(Добавление)
PHP:
скопировать код в буфер обмена
  1.  
  2. if($userow[7]<3600*24){
  3. echo("Работает");
  4. }
  5. else{
  6. echo("Не работает");
  7. }
  8.  


почему то он не че не выдает!! Почему?
 
 Top
Viper
Отправлено: 20 Декабря, 2010 - 15:01:03
Post Id



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


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


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




FRIK вы же сами себе геморой устроили.

Цитата:
PHP:
скопировать код в буфер обмена
  1. SELECT * FROM
  2.  
  3. list($d2,$m2,$y2) = explode('.',$userow[8]);

зачем такое делать?
Не проще ли забрать строку в ассоциативный массив и не городить говнокод?

И научитесь код дебажить!
$userow[7] что содержит?
Если вы в unix_timestamp время представляете то что вы сравниваете? У вас на текущее время всегда $userow[7] будет больше чем то 3600*24


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 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