Проблема с reload

4you

еееххххх....
Проблема с reload

У меня такая беда: существует некая форма из которой передаются данные.
Эти данные передаются на эту же страницу и записываются в базу данных.
Если сделать reload этой страницы после того, как уже хотя бы один раз
передал данные всплывает окошко (the page cannot be refreshed without resending
the information...) c двумя кнопками Retry и Cancel. Если жать Retry, то страница перергружается,
но опять посылает данные из формы. Если Cancel. то стораница не релодится.
Можно ли как-нибудь обойти этот момент? Я имею ввиду чтоб страница релодилась без повторной
отсылки данных.
 

Demiurg

Guest
В скрипте, в котором обрабатываешь данные, сначала делай все, что надо с данными, потом редиректь на другую страницу.
 

sigurd

Guest
То есть схема такая?
form.php -> action.php -> form.php ?
 

Demiurg

Guest
Можно такая, можно вообще все в одном файле.
 

sigurd

Guest
Дык вот тут и загвоздка. Когда я все делаю в одном файле, по рефрешу получается повторная отправка данных. А до отправки обработать нельзя, так как PHP не JS - onclick и прочих радостей само собой нет. Не знаешь введено что-то или нет. Если бы можно было "сбросить" переменные в $HTTP_POST_VARS[], так чтоб по рефрешу там было пусто ...
Ну вот вобщем в чем проблема.
 

Demiurg

Guest
Еще раз повторяю. После того как обработал данные редеректь на скрипт, который что то показывает. При рефрше будет просто показываться то что надо.
 

sigurd

Guest
Редирект организовать header("Location ..."); ?
Такой вопрос. Почему иногда при использовании этой функции получается Warning: headers already sent, хотя ничего такого в коде нету.
 

Demiurg

Guest
Редирект организовать header("Location ..."); ?
да
Такой вопрос. Почему иногда при использовании этой функции получается Warning: headers already sent, хотя ничего такого в коде нету.
скорее всего пробелы или переводы строк вне тегов <??>
вот такой код работать не будет:
PHP:
<?
//делаем что-нибудь без вывода
?>
<?
header(...);
?>
 

Krisha

pain in the neck
Автор оригинала: sigurd
Редирект организовать header("Location ..."); ?
Такой вопрос. Почему иногда при использовании этой функции получается Warning: headers already sent, хотя ничего такого в коде нету.
или еще echo где та делаешь перед header
 

4you

еееххххх....
ХМ

Автор оригинала: sigurd
Редирект организовать header("Location ..."); ?
Такой вопрос. Почему иногда при использовании этой функции получается Warning: headers already sent, хотя ничего такого в коде нету.
Если я не ошибаюсь, то если вообще до header ("location... писать хоть какие html тэги просто, либо выводить их с помощью пхп то увидишь этот warning. Так что я делаю так:
PHP:
header ("location...
<html>
<head>
<title>Let`s rock</title>
...
 

4you

еееххххх....
XM

Автор оригинала: sigurd
Редирект организовать header("Location ..."); ?
Такой вопрос. Почему иногда при использовании этой функции получается Warning: headers already sent, хотя ничего такого в коде нету.
Если я не ошибаюсь, то если вообще до header ("location... писать хоть какие html тэги просто, либо выводить их с помощью пхп то увидишь этот warning. Так что я делаю так:
PHP:
header ("location...
<html>
<head>
<title>Let`s rock</title>
...
 

4you

еееххххх....
OK SPASIBO

Автор оригинала: Demiurg
В скрипте, в котором обрабатываешь данные, сначала делай все, что надо с данными, потом редиректь на другую страницу.
Да, всё отлично работает!!! Спасибо
 

Demiurg

Guest
код
<html>
<?
header(..);
?>

аналогичен
<?
echo '<html>';
header(..);
?>

то есть это и есть вывод.
 

4you

еееххххх....
Ну прально, аналогичен. Поэтому сначала пхп, а потом хтмл
 
Сверху