我在php安装程序上工作 我想要的是页面睡眠5秒,然后加载主页面。我希望在这段时间内加载动画。
我的第一个没有动画的工作代码
$redir = str_replace('install/','',$redir);
sleep(5);
header( 'Location: ' . $redir . 'home' ) ;
}
这是我对动画的尝试。
$redir = str_replace('install/','',$redir);
ob_start();
echo '<style>.register{display:none;}<style>';
ob_flush();
echo '<h1 class="loading">loading...</h1>';
ob_flush();
sleep(5);
ob_flush();
header( 'Location: ' . $redir . 'home' ) ;
}
我认为这是错误的,因为它不起作用。
答案 0 :(得分:0)
使用PHP后,您无法从doc:
输出一些数据并重定向请记住,在任何实际输出之前必须调用header() 通过普通HTML标记,文件中的空行或PHP
发送
您可以使用刷新标头或Javascript刷新来实现您想要的效果。
刷新标题示例(如果您之前没有输出):
slick('slickGoTo', index)
或使用Javascript重定向:
<?php
header('Refresh: 5;URL='. $redir);
echo '<style>.register{display:none;}<style><h1 class="loading">loading...</h1>';
答案 1 :(得分:0)
如果你想加载一些页面;用户重定向5秒后,php不是一个很好的选择! 在渲染HTML之前在php中睡5秒意味着用户等待5秒加载页面! 你应该使用javascript(或jquery),将此代码添加到页面的末尾:
<script>
setTimeout(function() {
window.location.href='new_url';
}, 5000);
</script>