redirect — как вывести окно предупреждения (в PHP) непосредственно перед перезагрузкой страницы или перенаправлением ее на другую страницу

У меня есть этот код прямо здесь, который пытается показать диалоговое окно с предупреждением, как только строка успешно вставлена ​​в базу данных. Также я хочу перезагрузить страницу после отображения диалогового окна. Он успешно выскакивает окно предупреждения, когда закомментировано 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.");
}

0

Решение

Попробуйте это, чтобы показать предупреждение и перезагрузить страницу:

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
}
1

Другие решения

Вы не можете вызвать PHP Header для перенаправления, поскольку, отправив свой html (javascript), ваш Header уже был отправлен. Вы должны перенаправить с помощью JavaScript. window.location.href={your_url} будет перенаправлять.

Но я не думаю, что это правильный подход, вы, вероятно, должны сделать это задом наперед. Сначала выполните логику перенаправления в PHP, а затем включите логику в этот скрипт, чтобы показать окно предупреждения.

0

По вопросам рекламы [email protected]