Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

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


Tobolskiy

Recommended Posts

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

<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 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.