我编写了一个脚本来更新表单中的MySql数据库。
更新数据库后,我希望页面自动重定向到另一个页面。
这种情况一直很好,但是由于切换托管服务提供商非我的网站重新指导工作。
以下是代码:
<?php
$servername = "localhost";
$username = "XXX";
$password = "XXX";
$dbname = "XXX";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$id= $_POST[id];
$dob=$_POST[dob];
$sql=("update users set dob='$dob' where id='$id'")or die('Error 23 ' . mysql_error());
if ($conn->query($sql) === TRUE) {
echo "Updated successfully<br /><br />";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
?>
<?php
header("location:index.php?action=updated"); ?>
当我运行代码时,数据库会更新,但页面只显示Updated successfully
?
答案 0 :(得分:2)
尝试使用javascript重定向,如下所示:
if ($conn->query($sql) === TRUE) {
echo "<script>
alert('Updated successfully');
window.location.href = 'index.php?action=updated';
</script>";
}
答案 1 :(得分:0)
不要回应任何东西,然后尝试重定向。而只是简单地重定向而没有任何回声。
if ($conn->query($sql) === TRUE) {
header("location:index.php?action=updated");
exit;
} else
echo "Error: " . $sql . "<br>" . $conn->error;
答案 2 :(得分:0)
试试这个:
<?php
ob_start();
header('Location: http://www.example.com/index.php?action=updated', true);
?>