2013-07-15 41 views
1

我是yii框架的新手,我看不到任何关于如何在页面传递10秒后重定向的信息或论坛。例如在重置密码后,我想重定向到登录页面,但只有10秒钟才允许用户在页面上看到消息显示。yii - 如何在10秒后重定向

+1

简单的JavaScript工作得很好:'window.location.href = '新的URL';'。你可以用'Yii :: app() - > clientScript-> registerScript(...)'把它嵌入到你的页面中。 –

回答

4

您可以拨打Yii::app()->clientScript->registerMetaTag()注册这样的元标记重定向:

Yii::app()->clientScript->registerMetaTag("10;url={$returnUri}", null, 'refresh'); 

这将产生:

<meta http-equiv="refresh" content="10;url=/foo/index.php?r=site/catalog"/> 

这将产生等待10秒后的重定向。

如果你正在做一个简单的重定向,没有必要使用yii。你可以简单地使用Javascript和这样做:

window.location.href = 'http://yournewURLgoeshere.tld/foo/bar'; 

希望这有助于!

2

Yii中没有刷新的方法,但什么是错的:

if (!headers_sent()) { 
    header('Refresh:10;url='. $this->createUrl('controller/action')); 
}