PHP 如何在 header 重定向到另一个页面之前回显警报
PHP how to echo alert before header redirects to another page
我正在尝试创建一个功能,在用户登录后,会弹出一个警告 "welcome 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("Location:xxx.php");
功能的重定向不允许任何浏览器输出。
可以使用Javascript重定向(考虑程序逻辑)。
echo '<script>
alert(' + '"Welcome ' + $uname .'");
window.location.href="welcome.php";
</script>';
对于简单的 javascript 警报,您可以简单地使用 window.location.href
,但如果您需要显示一些高级弹出窗口,例如 bootstrap 模态或甜蜜警报,您可以使用 setTimeout
它在指定的毫秒数后计算表达式。
echo "<script> alert('Welcome $uname');
window.setTimeout(function(){
window.location.href = 'http://fullpath/dashboard.php';
}, 3000);
</script>"
您可以使用 javascript 警报,然后在特定超时后重定向它
echo '<script type="text/javascript">';
echo 'alert("Welcome $uname");';
echo 'window.location.href = "index.php";';
echo '</script>';
尝试使用上面的代码而不是下面的代码
``echo "<script> alert('Welcome $uname')</script>";
``header("location: dashboard.php");
我正在尝试创建一个功能,在用户登录后,会弹出一个警告 "welcome 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("Location:xxx.php");
功能的重定向不允许任何浏览器输出。
可以使用Javascript重定向(考虑程序逻辑)。
echo '<script>
alert(' + '"Welcome ' + $uname .'");
window.location.href="welcome.php";
</script>';
对于简单的 javascript 警报,您可以简单地使用 window.location.href
,但如果您需要显示一些高级弹出窗口,例如 bootstrap 模态或甜蜜警报,您可以使用 setTimeout
它在指定的毫秒数后计算表达式。
echo "<script> alert('Welcome $uname');
window.setTimeout(function(){
window.location.href = 'http://fullpath/dashboard.php';
}, 3000);
</script>"
您可以使用 javascript 警报,然后在特定超时后重定向它
echo '<script type="text/javascript">';
echo 'alert("Welcome $uname");';
echo 'window.location.href = "index.php";';
echo '</script>';
尝试使用上面的代码而不是下面的代码
``echo "<script> alert('Welcome $uname')</script>";
``header("location: dashboard.php");