У меня есть страница с 80+ динамически генерируемыми полями ввода, когда пользователь отправляет форму на другую страницу .php, и один из входных данных содержит значение, не являющееся числовым, он отправляет их обратно на страницу входных данных, используя: <?php header("Location: javascript:history.back()"); ?>
, одновременно регистрирует ошибку в переменной сеанса. Причина, по которой я использую javascript: history.back (), заключается в том, что он хранит значения, которые были в форме, даже когда вы нажимаете кнопку «назад». Но поскольку он кэширует страницу, я не могу вывести ошибку в том же скрипте .php, поэтому я добавил элемент и некоторый Ajax-код. Код Ajax извлекает другой файл с именем error.php, который содержит:
<?php
header("Cache-Control: no-cache");
session_start();
if(isset($_SESSION['error']))
{
echo $_SESSION['error'];
unset($_SESSION['error']);
}
?>
Получается, когда страница загружается сама по себе, но не при использовании history.back()
, похоже, что следующее не срабатывает:
<script type="text/JavaScript">
$(document).ready(function(){
$("#error p").load("error.php");
});
</script>
Есть идеи?
Спасибо
Джастин