php header/location 更改前未发生 JS 警报

JS alert not happening before php header/location change

这很有趣... 我正在尝试测试某些东西,然后显示 alert 然后一旦单击确定将页面重新定位到其他地方,使用 header 但是,如果我有下面的代码,它就会直接进入 URL。 如果我注释掉 header 然后 alert 工作....

elseif ($user['archived']=="1"){
    echo "<script type='text/javascript'>alert('Sorry you are no longer an owner');</script>";
    sleep(10);
    header('location: https://some URL'); 
}

您可以改用元重定向。我不确定这是好事还是坏事,但它会为您解决问题。

if (...) {
    // ...
} elseif ($user['archived']=="1") {
    echo '<meta http-equiv="refresh" content="10; URL=someurl">';'
    echo "<script type='text/javascript'>alert('Sorry you are no longer an owner');</script>";
    exit;
}