2010-09-20 276 views
0

我建立了一个cakephp应用程序,需要用户登录或注册(对于新用户),当他尝试下载文件时。我使用javascript来将用户重定向到登录页面,一旦他们登录,我希望用户回到他们所在的下载页面。重定向在IE中不起作用

我使用

$this->redirect($this->referer()); 

工程铬和FF的罚款。在IE中它不起作用。它将用户重定向回主页。 document.referrer为空。

据我所知,在IE中,document.referrer仅在用户点击链接时填充。

是否有解决方法或解决此问题的方法(javascript或php)。我感谢任何帮助。

谢谢。

回答

0

我不知道这是否适用于您,但大多数版本的IE在使用确认对话框时也有long-standing issue。正如sibidiba所说,引用是不可靠的 - 我将下载页面URL作为查询字符串参数传递给您的JavaScript重定向到登录。

1

Referer是一个完全可选的HTTP头元素。许多代理和防火墙消除了它。不建议在其上构建任何逻辑。 如果您需要重定向到某个上一页,则需要将该信息明确地保存为例如会话变量。