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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Переадресация в заданное время

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Описание: переадресация
MadDen
Отправлено: 23 Января, 2008 - 08:23:46
Post Id


Новичок


Покинул форум
Сообщений всего: 57
Дата рег-ции: Авг. 2007  
Откуда: Аглы


Помог: -3 раз(а)




Подскажите как сделать переадресацию допустим через 10 секунд?!
такое знаю:
CODE (text):
скопировать код в буфер обмена
  1. header('location: write.php'); exit();

но не знаю как сделать чтобы через заданное время она выполнялась


-----
Лучший способ убедиться, что меры предосторожности не понадобятся, это своевременно принять их.
 
 Top
-SCHATTEN-
Отправлено: 23 Января, 2008 - 08:30:56
Post Id



Пользователь


Покинул форум
Сообщений всего: 615
Дата рег-ции: Июль 2006  
Откуда: Оттуда !


Помог: 0 раз(а)




AJAX, JavaScript
или функция sleep
 
 Top
evgenijj
Отправлено: 23 Января, 2008 - 09:24:14
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




Если нужно перенаправить браузер через некоторое время, то можно выдать в браузер html-документ, у которого есть meta-тег <meta http-equiv="refresh" ...>:
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  3. <html>
  4. <head>
  5. <title>SomePage</title>
  6. <meta http-equiv="refresh"
  7. content="5; url=page.php">
  8. </head>
  9. <body>
  10. Ваш браузер будет перенаправлен через 5 секунд...
  11. </body>
  12. </html>
  13.  

Или отправить заголовок
CODE (text):
скопировать код в буфер обмена
  1. header( 'Refresh: 5; url=page.php' );

а потом вывести в браузер текст
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  3. <html>
  4. <head>
  5. <title>SomePage</title>
  6. </head>
  7. <body>
  8. Ваш браузер будет перенаправлен через 5 секунд...
  9. </body>
  10. </html>
  11.  

С помощью JavaScript
CODE (text):
скопировать код в буфер обмена
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2. <html>
  3. <head>
  4. <title>SomePage</title>
  5. <script type="text/javascript">
  6. function refreshPage() {
  7.   window.location.href="page.php";
  8. }
  9. </script>
  10. </head>
  11. <body onLoad="setTimeOut("refreshPage()", 5000)">
  12. Ваш браузер будет перенаправлен через 5 секунд...
  13. </body>
  14. </html>
 
 Top
Anton
Отправлено: 20 Августа, 2008 - 16:11:24
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Авг. 2008  


Помог: 0 раз(а)




Приветствую, всех.
Подскажите, пожалуйста, почему у меня в условном операторе if не работает конструкция header:

PHP:
скопировать код в буфер обмена
  1.  
  2.                 if ($logout == 'no')
  3.                 {
  4.                    header('location: http://site.ru/index.php');
  5.                 }
  6.  

?
условный оператор выполняется правильно, проверял, подставляя вместо
PHP:
скопировать код в буфер обмена
  1.  
  2. header('location: http://site.ru/index.php');
  3.  

строчку:
PHP:
скопировать код в буфер обмена
  1.  
  2. echo "<a href='http://site.ru/index.php'>site.ru</a>";
  3.  

(Отредактировано автором: 20 Августа, 2008 - 16:15:14)

 
 Top
Вездеход
Отправлено: 20 Августа, 2008 - 16:22:51
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 820
Дата рег-ции: Апр. 2008  
Откуда: Россия


Помог: 0 раз(а)




до обьявления заголовка есть вывод текста или еще чего нить?!

и покажите какая ошибка вылазиет


-----
о великий nl2br!
Хочешь невероятных ощущений? Юзай блокнот! Блокнот - чудеса сбываются!
Чем меньше вы знаете PHP - тем ценнее мои знания!
 
 Top
Anton
Отправлено: 20 Августа, 2008 - 23:06:58
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Авг. 2008  


Помог: 0 раз(а)




Выводится пустая страница не считая того, что формируют функции title() и footer().

вот код самой страницы logout'a(выхода из авторизации):
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. // Включаю файлы функций
  3. require_once('functions.php');
  4. // Сохранить для проверки, если кто-то вошел в систему *ранее*
  5. $old_username = $_SESSION['username'];  
  6. //Формирую массив из указателей: first-"первый раз" на странице(т.е. не подтвердил
  7. //свой "выход" или "невыход")
  8. $all_services = array('first', 'yes', 'no');
  9. $logout='first';
  10. if (isset($_POST['logout']) && in_array($_POST['logout'], $all_services))
  11. $logout = $_POST['logout'];
  12. // Начать вывод html-содержимого
  13. title('Страница выхода');
  14. if (!empty($old_username))
  15. {
  16.    if ($logout == 'first')
  17.    {
  18.       ?>
  19.       <br><br><br><br>
  20.       <table align='center' valign='center'>
  21.          <tr>
  22.             <td colspan='2'>
  23.                 <p>Вы точно желаете выйти?</p>
  24.             </td>
  25.          </tr>
  26.          <tr>
  27.             <td align='center' valign='center'>
  28.                 <form method='POST' action='logout.php'>
  29.                    <input type='submit' value='да'>
  30.                    <input type='hidden' value='yes' name='logout'>
  31.                  </form>
  32.             </td>
  33.             <td align='center' valign='center'>
  34.                 <form method='POST' action='logout.php'>
  35.                    <input type='submit' value='нет'>
  36.                      <input type='hidden'value='no' name='logout'>
  37.                  </form>
  38.              </td>
  39.           </tr>
  40.       </table>
  41.       <?PHP
  42.     }
  43.     if ($logout == 'yes')
  44.    {
  45.        unset($_SESSION['username']);
  46.        $result_dest = session_destroy();
  47.            if ($result_dest)
  48.            {
  49.             // Если пользователь вошел в систему и теперь выходит из нее
  50.             echo '<br>Успешный выход из системы.<br />';
  51.             }
  52.           else
  53.            {
  54.             // Пользователь вошел в систему и не может выйти из нее
  55.             echo '<br>Выход из системы невозможен.<br />';
  56.             }
  57.     }
  58.     if ($logout == 'no')
  59.     {
  60.      header('location: index.php');
  61.      }                 
  62.  
  63. }
  64. else
  65. {
  66.   // Если пользователь не входил в систему, но каким-то образом попал на эту страницу
  67.   echo '<br>Вы не входили в систему, поэтому и выходить из нее не нужно.<br />';
  68.   do_html_url('index.php', 'Страница входа');
  69. }
  70. footer();
  71. ?>

(Отредактировано автором: 20 Августа, 2008 - 23:09:44)

 
 Top
Вездеход
Отправлено: 21 Августа, 2008 - 08:59:19
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 820
Дата рег-ции: Апр. 2008  
Откуда: Россия


Помог: 0 раз(а)




PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. // Включаю файлы функций
  3. require_once('functions.php');
  4. // Сохранить для проверки, если кто-то вошел в систему *ранее*
  5. $old_username = $_SESSION['username'];  
  6. //Формирую массив из указателей: first-"первый раз" на странице(т.е. не подтвердил
  7. //свой "выход" или "невыход")
  8. $all_services = array('first', 'yes', 'no');
  9. $logout='first';
  10. if (isset($_POST['logout']) && in_array($_POST['logout'], $all_services))
  11. $logout = $_POST['logout'];
  12. // Начать вывод html-содержимого
  13. if (!empty($old_username))
  14. {
  15.    if ($logout == 'first')
  16.    {
  17.       title('Страница выхода');
  18.        ?>
  19.       <br><br><br><br>
  20.       <table align='center' valign='center'>
  21.          <tr>
  22.         <td colspan='2'>
  23.         <p>Вы точно желаете выйти?</p>
  24.         </td>
  25.      </tr>
  26.      <tr>
  27.         <td align='center' valign='center'>
  28.         <form method='POST' action='logout.php'>
  29.            <input type='submit' value='да'>
  30.            <input type='hidden' value='yes' name='logout'>
  31.          </form>
  32.         </td>
  33.         <td align='center' valign='center'>
  34.         <form method='POST' action='logout.php'>
  35.                   <input type='submit' value='нет'>
  36.              <input type='hidden'value='no' name='logout'>
  37.          </form>
  38.          </td>
  39.       </tr>
  40.       </table>
  41.       <?PHP
  42.     }
  43.     elseif ($logout == 'yes')
  44.    {
  45.        title('Страница выхода');
  46.        unset($_SESSION['username']);
  47.        $result_dest = session_destroy();
  48.        if ($result_dest)
  49.        {
  50.         // Если пользователь вошел в систему и теперь выходит из нее
  51.         echo '<br>Успешный выход из системы.<br />';
  52.         }
  53.       else
  54.        {
  55.         // Пользователь вошел в систему и не может выйти из нее
  56.         echo '<br>Выход из системы невозможен.<br />';
  57.         }
  58.     }
  59.     elseif ($logout == 'no')
  60.     {
  61.      header('location: index.php');
  62.      }            
  63.  
  64. }
  65. else
  66. {
  67.   // Если пользователь не входил в систему, но каким-то образом попал на эту страницу
  68.   echo '<br>Вы не входили в систему, поэтому и выходить из нее не нужно.<br />';
  69.   do_html_url('index.php', 'Страница входа');
  70. }
  71. footer();
  72. ?>


так пробуйте. у вас например вот тут
PHP:
скопировать код в буфер обмена
  1. title('Страница выхода');

уже выводится текст - и если выполняется условие $logout == 'no' то заголовок не может быть обьявлен

(Отредактировано автором: 21 Августа, 2008 - 09:00:36)



-----
о великий nl2br!
Хочешь невероятных ощущений? Юзай блокнот! Блокнот - чудеса сбываются!
Чем меньше вы знаете PHP - тем ценнее мои знания!
 
 Top
Anton
Отправлено: 21 Августа, 2008 - 10:46:02
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Авг. 2008  


Помог: 0 раз(а)




Спасибо, как Вы сказали работает.
Но по средствам функций title('Страница выхода' ) и footer() я формирую основной шаблон страницы. А как же мне формировать шаблон если эти функции убрать?

(Отредактировано автором: 21 Августа, 2008 - 10:48:18)

 
 Top
Вездеход
Отправлено: 21 Августа, 2008 - 11:13:06
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 820
Дата рег-ции: Апр. 2008  
Откуда: Россия


Помог: 0 раз(а)




ну покажите хотябы сами функции. сложно сказать что либо не видя кода...


-----
о великий nl2br!
Хочешь невероятных ощущений? Юзай блокнот! Блокнот - чудеса сбываются!
Чем меньше вы знаете PHP - тем ценнее мои знания!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB