Есть ли способ сделать отображение страницы несколькими секундами в php и перенаправить на другую страницу?
Мета-перенаправление, вероятно, то, что вы хотите, но вы можете сделать это и в PHP, например:
<?php header("Refresh: 10;url=http://www.yourdestination.com/"); ?>
Где 10 – количество секунд ожидания.
EDIT Хорошо, я стою исправлено. Исправленный ответ ниже.
Вы можете использовать функцию header
PHP, как показано в другом месте на этой странице.
Если вы хотите обновить страницу после визуализации страницы, вы можете сделать это с помощью JavaScript или Meta Refresh. Для пользователей, которые блокируют метаобновление и отключили JavaScript, хорошей практикой является предоставление ссылки, которую можно щелкнуть вручную, чтобы перейти к новой цели.
Пример:
<?php header("Refresh: 2;url=http://www.example.com/"); ?> <html> <head> <title>Redirects</title> <meta http-equiv="refresh" content="2; URL=http://example.com" /> <script type="text/javascript"> window.setTimeout(function() { location.href = 'http://example.com'; }, 2000); </script> </head> <body> <p>Click here if you are not redirected automatically in 2 seconds<br /> <a href="http://example.com">Example.com</a>. </p> </body> </html>
Также см. Предложения WCAG об автоматическом обновлении страницы .
Однако вы, вероятно, лучше всего это делаете в JavaScript
SetTimeout (функция () { window.location = "http://www.somedomain.com/somepage.php"; }, 5000); // 5 секунд
См. Ответ @ Gordon выше для более удобного и полного примера, это всего лишь один метод.
С перенаправлением META вы можете:
<meta http-equiv="refresh" content="2;url=http://example.com/">
Где 2
– задержка в секундах.
Используйте следующий код на PHP, но только после полного понимания этой страницы руководства (это основная важная часть при использовании следующего кода): –
$redirectionTime = 5; $newPageUrl = "wherever_page.php"; header( "Refresh: $redirectionTime; url=$newPageUrl" ); echo "You will now be redirected to a new page, after $redirectionTime seconds. Please be patient..."; exit();
Вышеупомянутый код перенаправляет пользователя на страницу «wherever_page.php» с существующей страницы через ровно 5 секунд. Но вам нужно сделать еще одну важную вещь.
Сначала необходимо запустить буфер вывода, так что если вы выведете любой HTML-код перед вызовом функции « header()
», никаких предупреждений или фатальных ошибок не будет. Чтобы сделать это, вам нужно вызвать следующую функцию в самой первой строке вашей веб-страницы, независимо от того, включаете ли вы что-либо или нет:
<?php ob_start(); // Rest of the web page logic comes after this
Основным преимуществом вышеуказанных наборов кода является то, что даже если JavaScript отключен для этого браузера, перенаправление все равно будет происходить.
Надеюсь, поможет.