Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

PHP вывод текста в зависимости от времени


Tobolskiy
 Поделиться

Рекомендованные сообщения

Всем привет, не раз встречал обсуждения на данную тему на других форумах, но толком не увидел рабочего варианта нигде. Есть код:

<SCRIPT LANGUAGE="JavaScript">
var h=(new Date()).getHours();
if (h > 9 && h <  22) document.writeln("Доставка <b>сегодня</b> при заказе до <b>22:00</b>");
if (h > 22 || h <  9 ) document.writeln("Доставка <b>сегодня</b> после 9:00." ) ;
</SCRIPT>

Соответственно берется локальное время сервера и выводится текст с 9 до 22 и с 22 до 9,

но, после 22:00 и до 00:00 не выводится ничего.

Как закрыть и этот интервал тоже?

Ссылка на комментарий
Поделиться на других сайтах


14 минут назад, Tobolskiy сказал:

Всем привет, не раз встречал обсуждения на данную тему на других форумах, но толком не увидел рабочего варианта нигде. Есть код:


<SCRIPT LANGUAGE="JavaScript">
var h=(new Date()).getHours();
if (h > 9 && h <  22) document.writeln("Доставка <b>сегодня</b> при заказе до <b>22:00</b>");
if (h > 22 || h <  9 ) document.writeln("Доставка <b>сегодня</b> после 9:00." ) ;
</SCRIPT>

Соответственно берется локальное время сервера и выводится текст с 9 до 22 и с 22 до 9,

но, после 22:00 и до 00:00 не выводится ничего.

Как закрыть и этот интервал тоже?

 

поменять временные интервалы или добавить еще одну строку условия...

сам способ конечно странный, но это другой вопрос )

Ссылка на комментарий
Поделиться на других сайтах

24 минуты назад, Vetroff сказал:

 

поменять временные интервалы или добавить еще одну строку условия...

сам способ конечно странный, но это другой вопрос )

 

да, но при добавлении третьего интервала (условия) не работает... руки кривые скорее всего.

 

других методов безобидных не нашел))

Ссылка на комментарий
Поделиться на других сайтах


11 минут назад, Tobolskiy сказал:

да, но при добавлении третьего интервала (условия) не работает... руки кривые скорее всего.

дак вы уже определитесь, вам PHP всётаки или JS )) 

На счёт третего условия не скажу почему оно у вас не добавляется, но в вашем примере не с 22 до 0 ничего не выводится, а конкретно в 22 и в 9  )) 

52 минуты назад, Tobolskiy сказал:

Соответственно берется локальное время сервера и выводится текст

В вашем случае берётся местное время с устройства клиента) 

Ссылка на комментарий
Поделиться на других сайтах

10 минут назад, Tobolskiy сказал:

 

да, но при добавлении третьего интервала (условия) не работает... руки кривые скорее всего.

 

других методов безобидных не нашел))

 

ну, можно прописать в одной строке if (h > 9 && h < 22)

а во второй просто else, т.е. все остальное время

  • +1 1
Ссылка на комментарий
Поделиться на других сайтах

2 минуты назад, iglin сказал:

дак вы уже определитесь, вам PHP всётаки или JS )) 

На счёт третего условия не скажу почему оно у вас не добавляется, но в вашем примере не с 22 до 0 ничего не выводится, а конкретно в 22 и в 9  )) 

 

Хаха)) сначала хотел написать о другом и теперь не исправить заголовок))))) спасибо что подметили))

То есть третий интервал и не нужен? Как  тогда правильнее будет указать условие?

Ссылка на комментарий
Поделиться на других сайтах


2 минуты назад, Vetroff сказал:

 

ну, можно прописать в одной строке if (h > 9 && h < 22)

а во второй просто else, т.е. все остальное время

 

А ларчик то просто открывался))) а я завис на том что нужно третье условие, даже не подумал что можно другой вариант поискать.

Спасибо! Получилось)))

Ссылка на комментарий
Поделиться на других сайтах


4 минуты назад, Tobolskiy сказал:

Как  тогда правильнее будет указать условие?

Если вам нужно время клиента, а не ваше местное время то if (h > 9 && h < 22) {...} else {...}

 

Но почему то мне кажется правильней от вашего часового пояса отталкиваться и сделать это всётаки на стороне сервера c PHP date("G");

 

А, ну и ещё можно без else, а в нижнем условии => и <= использовать

  • +1 1
Ссылка на комментарий
Поделиться на других сайтах

2 минуты назад, iglin сказал:

Если вам нужно время клиента, а не ваше местное время то if (h > 9 && h < 22) {...} else {...}

 

Но почему то мне кажется правильней от вашего часового пояса отталкиваться и сделать это всётаки на стороне сервера c PHP date("G");

 

А, ну и ещё можно без else, а в нижнем условии => и <= использовать

 

 

да, уже так и сделал. нужно было время сервера. спасибо что откликнулись!

 

 

Ссылка на комментарий
Поделиться на других сайтах


Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
 Поделиться

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу.
×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.