|
|
|
| На странице стоит форма ввода информации, имеющая ссылку на внешний обработчик.
В обработчике происходит проверка правильности введенной информации. Если информация введена неправильно, то происходит переход на прежнюю страницу. Вот так:
header('Location: 1.htm');
exit;
|
Однако при повторном вводе во вешний обработчик уходит не та информация, что ввели в последний раз, а та, что была введена первоначально. Как я понимаю, происходит кеширование, и броузер не формирует заново глобальную переменную, а передает то, что у него в кеше.
Тогда, почитав этот форум и имеющиеся в нем ссылки, я в обработчике сделал переход на страницу с формой вот таким образом:
$sl = rand(100, 999);
echo "<HTML><HEAD><META HTTP-EQUIV='Refresh' CONTENT='0;
URL=1.htm?s=", $sl, "'></HEAD></HTML>";
|
Но и это совершенно не изменило ситуацию - броузер не делает повторного ввода!
Но как-то же можно заставить броузер очистить кеш? | |
|
|
|
|
|
|
|
для: Владимир55
(14.01.2009 в 18:46)
| | Вот вам полный "боекомплект"
<?
function nocache(){
header("Expires: Thu, 19 Feb 1998 13:24:18 GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
header("Cache-Control: no-cache, mast-revalidate");
header("Cache-Control: post-check=0, pre-check=0");
header("Cache-Control: max-age=0");
header("Pragma: no-cache");
}
|
Если хоть что-то упустите... | |
|
|
|
|
|
|
|
для: Eugene77
(17.01.2009 в 18:04)
| | Не поможет, я так думаю, т.к. не в кэше дело. Но это МОЁ мнение, могу и ошибаться... | |
|
|
|
|
|
|
|
для: coloboc66
(18.01.2009 в 00:11)
| | Да, мне тоже так показалось, топикстартер просит не то, что хочет.
Притворяется :)
Чтобы избежать разнообразных мутностей и неопределённостей можно
прямо указать в форме значения полей , передав их обратно из обработчика каким-либо способом.
Даже более того: Насколько я понимаю, это единственный надёжный способ поэтапно добиться от посетителя необходимого заполнения формы, не расчитывая, что он сразу всё заполнит без ошибок. | |
|
|
|