У меня есть этот код прямо здесь, который пытается показать диалоговое окно с предупреждением, как только строка успешно вставлена в базу данных. Также я хочу перезагрузить страницу после отображения диалогового окна. Он успешно выскакивает окно предупреждения, когда закомментировано
header("location: link-1.php?e=Changes has been saved.")
, но когда я раскомментирую его, диалог больше не появляется.
if(mysqli_affected_rows($connect) == 1){
echo "<script type='text/javascript'>alert('Updated successfully.');</script>";
header("location: link-1.php?e=Changes has been saved.");
}
else {
header("location: link-1.php?error=Something went wrong.");
}
Попробуйте это, чтобы показать предупреждение и перезагрузить страницу:
if(mysqli_affected_rows($connect) == 1)
{
?>
<script>
alert('Updated successfully');
location.reload(); // It will reload the page and reloading will get the latest inserted data from db
</script>
<?php
}
Вы не можете вызвать PHP Header для перенаправления, поскольку, отправив свой html (javascript), ваш Header уже был отправлен. Вы должны перенаправить с помощью JavaScript. window.location.href={your_url}
будет перенаправлять.
Но я не думаю, что это правильный подход, вы, вероятно, должны сделать это задом наперед. Сначала выполните логику перенаправления в PHP, а затем включите логику в этот скрипт, чтобы показать окно предупреждения.