2009-06-30 4 views
1

Вот моя попытка:Как перейти на другую страницу за 3 секунды на PHP?

@header("Content-type: text/html; charset=utf-8"); 
@header("Location:/index.php"); 
@header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1 
@header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Date in the past 

Как вы уже видели, нет никакого контроля над «3 секунды», как сделать это вступит в силу в течение 3 секунд?

ответ

3

Это должно работать, в PHP:

header('Refresh: 3; url=index.php'); 
+0

, как это поддерживается разными браузерами? – omg

+1

AFAIK, он поддерживается всеми основными браузерами. –

+1

Обратите внимание, что этот код должен быть представлен перед любым другим php-кодом на странице. –

5

Самый простой способ сделать это - использовать meta redirect или перенаправить javascript. Говоря, как вы обслуживаете text/html, вы можете отбросить их в браузере.

<meta http-equiv="refresh" content="3;URL=/newpage.php"> 

или

window.setTimeout(function() { window.location = '/newpage.php' }, 3000); 

Edit: Согласно странице Википедии на URL redirection вы можете отправить заголовок Refresh непосредственно в браузере с PHP. Не знаю, насколько хорошо браузеры поддерживают это.

header('Refresh: 3; url=/newpage.php'); 
+0

Я помню, как PHP функцию, которая будет выводить как , На самом деле не нужно охотиться на нее - Asker может это реализовать. – Sampson

+0

Я думаю, что ваши параметры смешаны на setTimeout ... – Sampson

+0

@Jonathan: Спасибо, исправлено. – tj111

0

Вы можете воспользоваться обновления мета-тег, например:

<html> 
<head> 
    <title>redirect page</title> 
    <META http-equiv="refresh" content="5;URL=http://www.newurl.com"> 
</head> 
<body bgcolor="#ffffff"> 
    The contents you are looking for have moved. 
    You will be redirected to the new location automatically in 5 seconds. 
</body> 
</html> 
Смежные вопросы