Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Нужен ротатор JavaScript'ов (https://javascript.ru/forum/misc/64959-nuzhen-rotator-javascript%27ov.html)

TehSur 16.09.2016 11:28

Нужен ротатор JavaScript'ов
 
Здравия всем!
Ищу ротатор, который бы показывал определенный скрипт в определенный промежуток времени.
Например, нужно что-бы первый скрипт показывался 15 часов, или с 00:00 до 15:00. А второй скрипт 9 часов или с 15:00 до 24:00.
Все что находил обычно либо рандомно показывает, либо только через одинаковый промежуток.
Надеюсь на помощь, JavaScript за неделю вряд-ли выучу, а ротатор нужен уже сейчас...
Заранее благодарен.

TehSur 19.09.2016 05:55

Цитата:

Сообщение от Rise (Сообщение 428841)
TehSur, что значит показывать скрипт, скрипты выполняются, а не показываются... это не мультики...

Извиняюсь, не правильно выразился. Да, должны по времени исполняться скрипты, если это меняет суть просьбы.

TehSur 19.09.2016 09:10

Rise, как-то так? Протестить нет возможности пока.
<?php
if (date("%H") >= '15' && date("%H") < '24') {
echo '<script>alert(1)</script>';
} else {
echo '<script>alert(2)</script>';
}
?>

laimas 19.09.2016 09:17

Цитата:

Сообщение от TehSur
date("%H")

Это в каком учебнике прочитано, что параметр вывода РНР функции date() задается через %?

laimas 19.09.2016 09:28

TehSur,
да и условие не отражает требуемое - с 00:00 до 15:00. А второй скрипт 9 часов или с 15:00 до 24:00, для требуемого это будет:

echo date("G") <= 15 ? 1 : 2;


Но это верно только в том случае, если запуск определяется временем сервера, иначе проверка времени и подключение скрипта должно происходить на клиенте.

laimas 19.09.2016 10:13

Цитата:

Сообщение от Rise
date("H")

это с ведущим нулем, G - без ведущего нуля.

ну "до" так "до", я не против. :)

laimas 19.09.2016 10:53

Цитата:

Сообщение от Rise
на результат не влияет

конечно нет, но зачем получать непотребное выполняя при этом лишние операции?

TehSur 20.09.2016 05:21

Цитата:

Сообщение от laimas (Сообщение 429039)
Это в каком учебнике прочитано, что параметр вывода РНР функции date() задается через %?

Да это где-то на просторах инета прочитано)) Я больше по SEO, хотя приходится вот иногда работать со скриптами, дабы программистов не отвлекать на такие мелочи.
Цитата:

Сообщение от Rise (Сообщение 429048)
TehSur,
if (date("H") < "15") {

Работает, спасибо всем большое за помощь.

TehSur 20.09.2016 05:43

Еще хотел уточнить, сверка идет по дате сервера? Вывел на экран
echo date('l jS \of F Y h:i:s A');

Показал время на 3 часа меньше, чем мое.
Пробую изменить пояс, не меняется время.
<?php date_timezone_set('Europe/Kiev');
 echo date('l jS \of F Y h:i:s A'); ?>

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

TehSur 20.09.2016 06:53

Разобрался с поясом, используя
<?php ini_set('date.timezone', 'Asia/Omsk');
echo date('Y-m-d H:i:s'); ?>


Часовой пояс GMT +3, время: 21:11.