代码之家  ›  专栏  ›  技术社区  ›  Glen Solsberry

PHP标题(“刷新”)问题

  •  0
  • Glen Solsberry  · 技术社区  · 16 年前

    header('Refresh: 15; url=' . $url);
    

    除了人们通过Twitter(从Hootesuite客户端发布)访问此url外,此功能工作正常。显然,在所有浏览器中 比这更有效。对于IE,从Hootesuite链接,这不会正确刷新;直接链接就可以了。

    3 回复  |  直到 16 年前
        1
  •  2
  •   pestilence669    16 年前

    我一直主张结合使用,以避免不可避免的WebTV用户出现问题:

    • 标题(如您所做)
    • 元标记(在HTML头部)

    如果Twitter客户端正在使用链接缩短器,重定向的类型可能会以一种意想不到的方式影响IE。

        2
  •  1
  •   Glen Solsberry    16 年前

    事实证明,由于我们使用的URL设置了一个cookie,Hootsuite创建了一个框架,IE不会信任第三方cookie(我们的站点)。因此,我在页面中添加了一些framebuster代码,并在浏览器为IE时“立即”触发。代码如下:

    <meta http-equiv="refresh" content="15;url=<?php echo $url ?>" />
    <script type="text/javascript">
    var timeout = 1;
    if (navigator.userAgent.match(/MSIE/)) { timeout = 1; } else { timeout = 14500; }
    setTimeout('if (top != self) top.location.replace(self.location.href)', timeout);
    </script>
    

    也许有一天这会帮助其他随机用户。

        3
  •  0
  •   stukelly    16 年前

    例如,您是否厌倦了设置位置标题。

    $url = "http://www.example.com/";
    header("Location: " . $url);