[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Приветствие пользователя
YVSIK
собстно вот сам скрипт!!
<?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 выпадает, ничего нет
как-бы так отобразить, чтоб при этих переходах не выпадало?!!user posted image

и ещё так понял что время отражается которое есть на ПК,
тогда почему на сервере года стоит скрипт показывается его сервера время?
вот и подумал наверное Твин не зря сделал функцию , надо только некоторые значения к времени сервера применить и всё
ну примерно так думаю! :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 smile.gif
ну и подобрать на место date("H"); необходимую величину !!
вот щас так подумал .
а что насчет серверного времени это самый главный вопрос темыuser posted image

Спустя 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'));
:D

Спустя 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 может привести к неожиданным результата
вобщем пока толком ещё не дошел до конца, думаю надо ещё
как-то провести эти преобразования из числа в строку или наоборот и проводить их сравнение),,,
читал вчера мануал и на этом примере стал там многое понимать, об чем там идет речь biggrin.gif
так что пока отложил этот вопрос пока в голове не получится полный алгоритм действий
сравнений (пусть сам родится в голове , всему свое время biggrin.gif biggrin.gif biggrin.gif )
ща ещё посмотрел как построеня функция и на это примере стал понимать
biggrin.gif biggrin.gif biggrin.gif как они скроются, Вообще а для меня это Оч важно!! СПС!!

Спустя 5 минут, 10 секунд (11.09.2011 - 20:56) Winston написал(а):
Цитата (YVSIK @ 11.09.2011 - 20:50)
if ($h2>= 5.59 && $h2<=12.00)

А зачем еще и минуты городить ? huh.gif

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

вот сОделаю так, подключу твою функцию и потестю ))
потом сделаю выводы каков результ ))

Спустя 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
Вот теперь отлично работает ф-я, и часы не выпадают :)
Свернутый текст
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
У меня даже слова куда-то запропостились !! от неожиданности этих решений !!
ларчик всегда проще открывается, чем себе представляется!!


_____________
«Гнусное свойство карликовых умов приписывать
________________!свое духовное убожество другим!»
___
О) как-же он прав=>__________________ © Оноре де Бальзак.

отличный хост(рекомендую !! )
My MVC-CMV
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.