<?php
/*скрипт приветствия юзера!!! !!!*/
$h2 = date("H");
if ($h2>= 5 && $h2<12) echo "Доброе утро !";
if ($h2>= 12 && $h2<18) echo "Добрый день !";
if ($h2>= 18 && $h2<24) echo "Добрый вечер !";
if ($h2>= 24 && $h2<5) echo "Доброй ночи !";
и при переходе между часми выпадает время, приветствия
уже по разному пробовал,и что-то все равно не сробатывает,
при переходе между часами не отображается
пример:
if ($h2>= 18 && $h2<24) echo "Добрый вечер !"
с 18 и до 00.00 приветствует а дальше с 00.00 и до 01.00 выпадает, ничего нет
как-бы так отобразить, чтоб при этих переходах не выпадало?!!
и ещё так понял что время отражается которое есть на ПК,
тогда почему на сервере года стоит скрипт показывается его сервера время?
вот и подумал наверное Твин не зря сделал функцию , надо только некоторые значения к времени сервера применить и всё
ну примерно так думаю! :rolleyes:
Свернутый текст
<?php
/**
* Функция перевода даты из азиатского формата в прописной
* Translation function of date from the Asian format in the string
* @param string $date, boolean $format
* @return string
*/
function formatDate($date, $format = true)
{
global $month;
$day = substr($date, 8, 2);
$mnt = $month[substr($date, 5, 2)];
$year = substr($date, 0, 4);
$time = '';
if($format)
$time = ' '. substr($date, 11);
return $day .' '. $mnt .' '. $year . $time;
}
ваши мнения по поводу и без повода принимаются
ЗЫ)) а то может и лень самому это делать разбираться в этом ,
вроде просто кажется ....!
Спустя 33 минуты, 26 секунд (10.09.2011 - 12:20) redreem написал(а):
что мешает написать так:
if (($h2>= 0 && $h2<5)) echo "Доброй ночи !";
Спустя 5 минут, 58 секунд (10.09.2011 - 12:26) YVSIK написал(а):
Цитата (redreem @ 10.09.2011 - 12:20) |
что мешает написать так: if (($h2>= 0 && $h2<5)) echo "Доброй ночи !" |
а может изменить формт приема?
так примерно 24.00 и на следующем 24.01

ну и подобрать на место date("H"); необходимую величину !!
вот щас так подумал .
а что насчет серверного времени это самый главный вопрос темы
Спустя 2 часа, 32 минуты, 23 секунды (10.09.2011 - 14:58) Guest написал(а):
if ($h2>= 24 || $h2<5) echo "Доброй ночи !";
;)
Спустя 1 час, 8 минут, 48 секунд (10.09.2011 - 16:07) alex12060 написал(а):
Если я не ошибаюсь, то времени 24:00 - не бывает :)
Далее, желательно установить временную зону:
Ну а потом, все должно заработать.
Кстати, вот мой вариант распределения частей суток:
Далее, желательно установить временную зону:
date_default_timezone_set('Europe/Moscow');
Ну а потом, все должно заработать.
Кстати, вот мой вариант распределения частей суток:
с 00:00 до 05:59 - ночь
с 06:00 до 11:59 - утро
с 12:00 до 17:59 - день
с 18:00 до 23:59 - вечер
Спустя 22 минуты, 49 секунд (10.09.2011 - 16:30) YVSIK написал(а):
date_default_timezone_set('Europe/Moscow');
Ну вот это и на сервере сработало СРАБОТАЛО ))
теперь поменяю временные зоны и потестю
alex12060 респект !!!
Спустя 23 часа, 8 минут, 58 секунд (11.09.2011 - 15:39) Winston написал(а):
Цитата (YVSIK @ 10.09.2011 - 11:47) |
<?php /*скрипт приветствия юзера!!! !!!*/ $h2 = date("H"); if ($h2>= 5 && $h2<12) echo "Доброе утро !"; if ($h2>= 12 && $h2<18) echo "Добрый день !"; if ($h2>= 18 && $h2<24) echo "Добрый вечер !"; if ($h2>= 24 && $h2<5) echo "Доброй ночи !"; |
Свернутый текст
function hello($hours)
{
return ($hours >= 5 && $hours < 12 ? 'Доброе утро !' : ($hours >= 12 && $hours < 18 ? 'Добрый день !' : ($hours >= 18 && $hours < 00 ? 'Доброй вечер !' : ($hours >= 00 && $hours < 5 ? 'Дброй ночи !' : ''))));
}
echo hello(date('H'));
Спустя 5 часов, 11 минут, 23 секунды (11.09.2011 - 20:50) YVSIK написал(а):
Winston даже и не подумал про функцию Спасибо !!
вот только вчера сидел и многое ещё узнал, про плавающие числа и выводы мои неутешительные
а вот это понял теперь написано не правильно
$h2<12
$h2<18
должно но быть так
$h2<=12
$h2<=18
это раз)) второе
это то что так и саказано что цифры поле точки скажем так
if ($h2>= 5.59 && $h2<=12.00)
особенно 0.09 может привести к неожиданным результата
вобщем пока толком ещё не дошел до конца, думаю надо ещё
как-то провести эти преобразования из числа в строку или наоборот и проводить их сравнение),,,
читал вчера мануал и на этом примере стал там многое понимать, об чем там идет речь
так что пока отложил этот вопрос пока в голове не получится полный алгоритм действий
сравнений (пусть сам родится в голове , всему свое время
)
ща ещё посмотрел как построеня функция и на это примере стал понимать
как они скроются, Вообще а для меня это Оч важно!! СПС!!
вот только вчера сидел и многое ещё узнал, про плавающие числа и выводы мои неутешительные
а вот это понял теперь написано не правильно
$h2<12
$h2<18
должно но быть так
$h2<=12
$h2<=18
это раз)) второе
это то что так и саказано что цифры поле точки скажем так
if ($h2>= 5.59 && $h2<=12.00)
особенно 0.09 может привести к неожиданным результата
вобщем пока толком ещё не дошел до конца, думаю надо ещё
как-то провести эти преобразования из числа в строку или наоборот и проводить их сравнение),,,
читал вчера мануал и на этом примере стал там многое понимать, об чем там идет речь

так что пока отложил этот вопрос пока в голове не получится полный алгоритм действий
сравнений (пусть сам родится в голове , всему свое время



ща ещё посмотрел как построеня функция и на это примере стал понимать



Спустя 5 минут, 10 секунд (11.09.2011 - 20:56) Winston написал(а):
Цитата (YVSIK @ 11.09.2011 - 20:50) |
if ($h2>= 5.59 && $h2<=12.00) |
А зачем еще и минуты городить ?

Спустя 4 минуты, 38 секунд (11.09.2011 - 21:00) YVSIK написал(а):
Winston да так и не получил что время не прыревалось так и выпадают некоторые часы))
так и затупился и даже заблудился ) вобщем надо некоторое время
дать отдохнуть голове чтоб дальше не тупить
бубен уже венколько раз
включал
вот сОделаю так, подключу твою функцию и потестю ))
потом сделаю выводы каков результ ))
так и затупился и даже заблудился ) вобщем надо некоторое время
дать отдохнуть голове чтоб дальше не тупить
бубен уже венколько раз

вот сОделаю так, подключу твою функцию и потестю ))
потом сделаю выводы каков результ ))
Спустя 17 минут, 11 секунд (11.09.2011 - 21:17) killer8080 написал(а):
а так?
/*скрипт приветствия юзера!!! !!!*/
$h2 = date("H");
if ($h2>= 5 && $h2<12) echo "Доброе утро !";
elseif ($h2>= 12 && $h2<18) echo "Добрый день !";
elseif ($h2>= 18) echo "Добрый вечер !";
elseif ($h2<5) echo "Доброй ночи !";
Спустя 1 минута, 50 секунд (11.09.2011 - 21:19) Winston написал(а):
YVSIK
Вот теперь отлично работает ф-я, и часы не выпадают :)
А если вызывать на сайте, то надо использовать формат G
Вот теперь отлично работает ф-я, и часы не выпадают :)
Свернутый текст
function hello($hours)
{
return ($hours >= 0 && $hours < 5 ? 'Доброй ночи !' : ($hours >= 5 && $hours < 12 ? 'Доброе утро !' : ($hours >= 12 && $hours < 18 ? 'Добрый день !' : ($hours >= 18 && $hours <= 23 ? 'Добрый вечер !' : ''))));
}
for($i = 0; $i <= 23; $i++)
echo $i . ' -> ' . hello($i) . '<br/>';
А если вызывать на сайте, то надо использовать формат G
echo hello(date('G'));
Спустя 26 минут, 26 секунд (11.09.2011 - 21:46) YVSIK написал(а):
killer8080
Winston
У меня даже слова куда-то запропостились !! от неожиданности этих решений !!
ларчик всегда проще открывается, чем себе представляется!!
Winston
У меня даже слова куда-то запропостились !! от неожиданности этих решений !!
ларчик всегда проще открывается, чем себе представляется!!
_____________
«Гнусное свойство карликовых умов приписывать
________________!свое духовное убожество другим!»
___О) как-же он прав=>__________________ © Оноре де Бальзак.
отличный хост(рекомендую !! )
My MVC-CMV