Я отправляю все формы моего веб-сайта на определенную страницу form_submition.php
, после обработки данных формы я перенаправляю на другую страницу index.php?page=some page
с помощью функции заголовка, но в одной из моих форм с именем main_form
я получаю неправильную информациюперенаправление
if(isset($_POST['form1']))
{
// process form data
header('Location: ../index.php?page=some page')
}
if(isset($_POST['form2']))
{
// process form data
header('Location: ../index.php?page=some page')
}
$to=$_GET['to']
if (isset($_POST['main_form']) ) {
// process form data
}
header("Location: ../index.php?page={$to}&error_loc_{$error_loc}=1&err_msj=" . $err_msj, true, 302);
exit();
но оно перенаправляет меня на mywebsite.com/folders/form_submitions.php?to=all_p
вместо mywebsite.com/index.php?page=all_p
любые идеи?
ОБНОВЛЕНИЕ 1
Я много раз проверял свой код, похоже, что заголовок вообще не перенаправляет страницу.странно то, что страница в mywebsite.com/index.php?page=all_p
загружается, но URL-адрес не изменяется, а файлы css + js не загружаются, поскольку относительный путь становится недействительным.
UPDATE 2
Далее Проверяя мой код, перед отправкой main_form
в form_submission.php
я открываю новое окно с javascript для печати некоторых данных.следующая форма:
<form enctype='multipart/form-data' action='./forms/form_submitions.php?to=all_p' onsubmit="return checkfiles('attachfiles')">
.
.
.
<button id="main_form" name="main_form" class="btn btn-primary">Save Changes</button>
</form>
При нажатии #main_form
я вызываю следующую функцию:
$("#main_form").on('click', function(event) {
newWin = window.open('printingpage.php?data='+ data);
setTimeout(function () { newWin.print(); }, 500);
});
Здесь функция печати не вернется, пока не будет закрыт предварительный просмотр.,Я думаю, что это создает проблему, потому что, когда я удаляю функцию newWin.print()
, все работает просто отлично.Есть ли способы сделать эту печать асинхронной?