Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Редирект по времени
Форумы портала PHP.SU » PHP » Напишите за меня, пожалуйста » Редирект по времени

Страниц (1): [1]
 

1. Анатолий1977 - 28 Декабря, 2016 - 14:03:53 - перейти к сообщению
Здравствуйте! Столкнулся с очередной проблемой, нужна ваша помощь...
в чем суть вопроса...
есть страница work_off.php и work_on.php
как реализовать редирект с work_off.php на work_on.php например в 12:00 затем с work_on.php редирект в 13:00 на work_off.php и т.д.
по идеи нужно вот что..(заменю work_off.php и work_on.php на работаем и не работаем)
нужен график работы определенных страниц сайта
в 11 утра работаем, в 12 дня не работаем, затем в 13 работаем и в 14.00 не работаем и работа должна начаться на следующий день в 11 утра.

Заранее спасибо.
(Добавление)
Кое как нашел что то подходящее, но немного не то...
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. if (date('H') >= 16 || date('H:i') < 7)
  3. {
  4. header('Location: time2.php');
  5. }
  6. ?>

как установить время с минутами?
вроде такого
PHP:
скопировать код в буфер обмена
  1. if (date('H:i') >= 16.10 || date('H:i') < 7.00)
2. andrewkard - 28 Декабря, 2016 - 20:00:33 - перейти к сообщению
Анатолий1977
mktime формируете метку времени и сравниваете ее с time()
3. Анатолий1977 - 28 Декабря, 2016 - 20:04:49 - перейти к сообщению
andrewkard пишет:
Анатолий1977
mktime формируете метку времени и сравниваете ее с time()

ох, если б я знал, как это делается...
4. andrewkard - 28 Декабря, 2016 - 21:13:40 - перейти к сообщению
Анатолий1977 пишет:
ох, если б я знал, как это делается...

ссылку же выдал...
PHP:
скопировать код в буфер обмена
  1.  
  2. $start = mktime (11, 0, 0, date("n"), date("j"), date("Y"));
  3. $end =  mktime (12, 0, 0, date("n"), date("j"), date("Y"));
  4.  
  5. $now = time();
  6.  
  7. if ($start < $now && $now < $end){
  8.  include "work_on.php";
  9. }
  10.  
  11.  

сдается мне что Вам не редирект нужен, а включение обработчика в зависимости от времени.
5. Анатолий1977 - 29 Декабря, 2016 - 05:45:14 - перейти к сообщению
andrewkard
Спасибо! Работает!
Нет, мне на самом деле нужен редирект, сайт этот буду администрировать я один, у меня просто не будет возможности следить за ним ночью. всего рассказать не могу, сорри.

А реально сделать как то так?
PHP:
скопировать код в буфер обмена
  1. $start = mktime (11, 0, 0, date("n"), date("j"), date("Y"));
  2. $end =  mktime (12, 0, 0, date("n"), date("j"), date("Y"));
  3.  
  4. $now = time();
  5.  
  6. if ($start < $now && $now < $end){
  7.  include "work_on.php";
  8. }
  9. тут какой то скрипт для рефреш каждые 5 сек без перезагрузки страницы
  10.  


Быть может это как то реально реализовать через ajax?
6. Анатолий1977 - 29 Декабря, 2016 - 08:59:19 - перейти к сообщению
Собственно вот что у меня получилось. выкладываю, может кому еще и пригодится...

index.php
PHP:
скопировать код в буфер обмена
  1.  
  2. <script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
  3.  
  4. <script type="text/javascript">
  5. var auto_refresh = setInterval(
  6. function(){
  7. $('#time').load('time.php');
  8. }, 1000);
  9. </script>
  10. <div id="time"></div>
  11.  


time.php
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. $start1 = mktime (9, 50, 0, date("n"), date("j"), date("Y")); // 8,<- часы 5,<- минуты 0,<- секунды .. минуты указываются без нуля. в данном примере 8:05:00
  4. $end1 =  mktime (9, 51, 0, date("n"), date("j"), date("Y"));  //
  5.                                                               //
  6. $start2 = mktime (9, 51, 0, date("n"), date("j"), date("Y"));  //
  7. $end2 =  mktime (9, 52, 0, date("n"), date("j"), date("Y"));   //
  8.                                                               //
  9. $now = time();
  10.  
  11. if ($start1 < $now && $now < $end1){
  12.  include "content1.php";
  13. }
  14.  
  15. if ($start2 < $now && $now < $end2){
  16.  include "content2.php";
  17. }
  18. ?>
  19.  


content1.php и content2.php это ваши страницы, которые должны отображаться в установленное вами время суток

Всем спасибо за помощь!!! С наступающим новым годом!

 

Powered by ExBB FM 1.0 RC1