我将以下代码重定向到同一页面,一旦将值提交到php中的数据库。在重定向之前,它必须打印js警告提交值。使用下面的代码,它只是重定向但不打印警报。请告诉我代码中的问题在哪里。
if ($runsql)
{
do_alert ("Profile for ".$student_pet_name." Saved Successfully");
header('Location: student_detail_entry.php');
}
else
{
echo "Error in Submitted Value ". mysql_error();
}
我的do_alert函数是
function do_alert($msg)
{
echo '<script type="text/javascript">alert("' . $msg . '"); </script>';
}
感谢...
答案 0 :(得分:3)
如果使用header()函数重定向,浏览器将立即重定向,并且不会为浏览器输出其他数据。
您可以首先提醒()并使用javascript执行重定向,例如与
window.location = "http://www.google.com/"
详细了解header()函数:PHP.net header()
答案 1 :(得分:0)
您不能同时打印到屏幕并重定向。 header()
要求没有发送任何输出,并且因为您正在回显:您的JavaScript警报,重定向&amp; JavaScript执行将不会像您期望的那样运行。
解决方案?也许将某种消息作为GET参数传递,并在student_detail_entry.php
上执行警报(在页面加载时)。
答案 2 :(得分:0)
您可以使用,
location.href="student_detail_entry.php";
代替,
header('Location: student_detail_entry.php');