PHP如何在标题重定向到另一个页面之前回显警报

问题描述 投票:1回答:3

我正在尝试创建一个功能,在用户登录后,会弹出一个提示“欢迎USER_NAME”的警告,之后它将重定向到用户个人资料页面。

我尝试了sleep和flush方法,甚至ob_start和ob_end_flush方法......但似乎没有任何工作,它只是在登录后重定向到用户配置文件而不回显警报。有没有办法解决这个问题?

这是代码的一部分:

<?php
if (isset($_SESSION['user'])) {
``$_SESSION['user'] = $uname;
``echo "<script> alert('Welcome $uname')</script>";
``header("location: dashboard.php");
}
?>
php header echo
3个回答
3
投票

使用qazxsw poi功能的PHP重定向不允许任何浏览器输出。

您可以使用Javascript重定向(考虑到程序逻辑)。

header("Location:xxx.php");

1
投票

对于简单的javascript警报,您可以简单地使用echo '<script> alert(' + '"Welcome ' + $uname .'"); window.location.href="welcome.php"; </script>'; ,但如果您需要显示一些高级弹出窗口,如bootstrap模态或甜蜜警报,您可以使用window.location.href,它会在指定的毫秒数后计算表达式。

setTimeout

您可以使用javascript警报,然后在特定超时后重定向它


0
投票
echo "<script> alert('Welcome $uname');
window.setTimeout(function(){


    window.location.href = 'http://fullpath/dashboard.php';

}, 3000);
</script>"

尝试上层而不是下面的代码

echo '<script type="text/javascript">'; 
echo 'alert("Welcome $uname");';
echo 'window.location.href = "index.php";';
echo '</script>';
© www.soinside.com 2019 - 2024. All rights reserved.