Запретить обновление страницы.

romanich

Новичок
Запретить обновление страницы.

Проблема в следующем:
В одном файле index.htm имеется форма, которая (форма) обрабатывается файлом mail.phtml (отправка данных на почтовый ящик). Если форму водиш данные и жмеш отправить, появляется mail.phtml и введется обработка, но если нажать на кнопку обновить, то phtml файл сработает еще раз, и передаст на почтовый ящик все те же переменные. Может как нибудь можно запретить обновление страницы или есть другой способ обойти эту проблему.
 

GD

Guest
а ты после обработки формы делай

header('Location: <куда-нибуть>');
 

romanich

Новичок
Пишу следующее:
<?
header('Location: http://www.myweb.com');
?>
Выдает ошибку. Это первая проблема.
Вторая, а если я не знаю куда. Дело в том, что у меня сотни файлов и обрабатываются они одним mail.phtml
 

GD

Guest
1. покажи что за ошибка...по всей видимости ты вставил эту строку после того как пользователю в браузер что то отдал...

2. можно перенаправить (к примеру) опять на форму:

header('Location: '.$HTTP_REFERER);
 

romanich

Новичок
Автор оригинала: GD
1. покажи что за ошибка...по всей видимости ты вставил эту строку после того как пользователю в браузер что то отдал...

2. можно перенаправить (к примеру) опять на форму:

header('Location: '.$HTTP_REFERER);
Вот сама ошибка:

Warning: Cannot add header information - headers already sent by (output started at /www/servers/ecro2/public_html/test/mail.phtml:4) in /www/servers/ecro2/public_html/test/mail.phtml on line 109

Я тут подумал, если сделать все проще:
<meta http-equiv="Refresh" content="1; URL=myweb.com">
Единственно вопрос, передастся ли сам скрипт если он будет расположен за этим тегом.
 

tony2001

TeaM PHPClub
ты подумай головой.
тебе надо вернуться на форму, по все видимости, вот и делай Header ("Location: index.htm");
насчет ошибки - читай тут [m]header[/m]
чтобы перевести сообщение об ошибке много ума не надо.
 
Сверху