I have the below code to redirect to the same page once the value submitted to the database in php. Before redirect it has to print js alert that the value is submitted. With the below code its just redirecting but not printing the alert. Please tell me where is the problem in the code.
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();
}
and my do_alert function is
function do_alert($msg)
{
echo '<script type="text/javascript">alert("' . $msg . '"); </script>';
}
thanks...
If you redirect with the header() function, the browser will immediately redirect and no other data will be outputted for the browser.
You could alert() first and perform a redirect with javascript, e.g. with
window.location = "http://www.google.com/"
Read more about the header() function: PHP.net header()
You can't both print to the screen and redirect at the same time. header()
requires that no output has been sent, and since you're echoh:ing your JavaScript alert, the redirection & JavaScript execution won't be run as you're expecting it to.
Solution? Maybe pass some sort of message as a GET parameter, and do the alert on student_detail_entry.php
instead (on page load).
You may use,
location.href="student_detail_entry.php";
instead of,
header('Location: student_detail_entry.php');