Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> "запрет" Back кнопки при POST запросах, Подскажите, это возможно? 
:(
    Опции темы
owl
  Дата 4.4.2007, 16:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 4.4.2007

Репутация: нет
Всего: нет



Добрый день!

Подскажите, возможно ли организовать "запрет" возврата кнопкой Back на предыдущую страницу с формой (чтобы исключить повторный ввод данных и т.д.)? Если да, то как?
PM MAIL   Вверх
nitr
Дата 4.4.2007, 16:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2543
Регистрация: 10.2.2006
Где: Россия :)

Репутация: 37
Всего: 84



owl, сформировать верный заголовок smile
а точнее вечером. Скажу одно запрет кеширования... но с Оперой будет сложнее, поэтому вечером, если вдруг не ответят.


--------------------
PM   Вверх
nitr
Дата 4.4.2007, 23:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2543
Регистрация: 10.2.2006
Где: Россия :)

Репутация: 37
Всего: 84



мне помогло в заголовке добавить:
Цитата

-Cache-Control => 'no-cache', -Pragma => 'no-cache'

так же можно в страничке добавить мета-тег (тут немного подробней о них - http://vancouver-webpages.com/META/metatags.detail.html и тут на русском - http://www.htmlbook.ru/html/meta.html)


--------------------
PM   Вверх
tishaishii
Дата 5.4.2007, 07:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Создатель
***


Профиль
Группа: Завсегдатай
Сообщений: 1262
Регистрация: 14.2.2006
Где: Москва

Репутация: 4
Всего: 8



Ни как нельзя. Зависит от настроек браузера.
PM MAIL ICQ Skype   Вверх
Ramirez
Дата 5.4.2007, 09:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 305
Регистрация: 18.1.2005
Где: Moscow, ExUSSR

Репутация: 4
Всего: 5



По человечески - действительно похоже никак.
Я чаще всего делаю так: когда скрипт принимает данные из формы он возвращает страницу с ява-скриптом который сразу перекидывает браузер куда мне надо. Если нажать "назад" то браузер попадет на страницу со скриптом который мгновенно кинет обратно. На практике этого скачка практически незаметно. От случайных перходов назад - спасает. 
PM ICQ   Вверх
nitr
Дата 5.4.2007, 15:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2543
Регистрация: 10.2.2006
Где: Россия :)

Репутация: 37
Всего: 84



Ramirez,  tishaishii,  почему же нельзя? В купе с другими "технологиями" можно, теже сессии, это как пример. Я имею ввиду, для запрета повторных, надо проверку сделать. Вечером постараюсь выложить ссылку на ресурс, на котором и потестируем smile Буду благодарен, если найдёте ошибку или "неорганизованный "запрет"" smile


--------------------
PM   Вверх
owl
Дата 6.4.2007, 15:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 4.4.2007

Репутация: нет
Всего: нет



nitr , добрый день,

Правильно - если нельзя, но очень хочется - то можно!  smile 

Просветите, пожалуйста, что и как нужно сделать?
Есть ещё подозрение на какие-нибудь настройки Апача - пока пытаюсь что-то найти на эту тему.

Заранее спасибо за помощь!
 
PM MAIL   Вверх
Nab
Дата 6.4.2007, 16:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 582
Регистрация: 25.3.2006
Где: Kiev

Репутация: 26
Всего: 37



Цитата(owl @  6.4.2007,  15:48 Найти цитируемый пост)
Правильно - если нельзя, но очень хочется - то можно!

Не верно, этого сделать нельзя... А именно взврат на предыдущую страницу с формой всегда возможен... Потому что она была уже единожды получена и может быть сохранена, и использована столько раз, сколько заблогарассудиться. Мы не в состоянии контролировать все многообразие клиентов. 
А вот решение на стороне сервера, по отказу от приема одной и той же формы, реализовать можно, и как верно сказано, это реализовываеться с помощью сессий, или к примеру таймаута с одного IP... ну и еще решения быть могут.... 

А по поводу кнопки 'Back' в идеале счтаю AJAX, и пример gmail.com... Но это завязка на JS... что не есть гуд... Я к примеру не очень люблю сайты которые заставляют использовать какуюто дополнительную функциональность в обязательном порядке... Считаю основной функционал должен быть доступен всегда и всегда работать, а вот всякие украшательства, дополнительные удобства должны быть опциональными...


--------------------
 Чтобы правильно задать вопрос нужно знать больше половины ответа...
Perl Community 
FREESCO in Ukraine 
PM MAIL   Вверх
nitr
Дата 6.4.2007, 16:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2543
Регистрация: 10.2.2006
Где: Россия :)

Репутация: 37
Всего: 84



Цитата(nitr @  5.4.2007,  15:31 Найти цитируемый пост)
Я имею ввиду, для запрета повторных, надо проверку сделать.

да я как раз про это и писал. Но многие браузеры всё же понимают многие заголовки ;)


--------------------
PM   Вверх
tishaishii
Дата 6.4.2007, 19:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Создатель
***


Профиль
Группа: Завсегдатай
Сообщений: 1262
Регистрация: 14.2.2006
Где: Москва

Репутация: 4
Всего: 8



Цитата
Ramirez,  tishaishii,  почему же нельзя?

К-э-ш-и-р-о-в-а-н-и-е.
PM MAIL ICQ Skype   Вверх
djkostya
Дата 6.4.2007, 20:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 71
Регистрация: 16.5.2006
Где: Москва

Репутация: нет
Всего: 2



Код

    print "Expires: Thu, 01 Jan 1970 00:00:01 GMT\r\n";
    print "Cache-Control: no-cache\r\n";
    print "Content-Type: $type;charset=$charset\n\n";



А так вобще сессии
PM MAIL WWW ICQ   Вверх
tishaishii
Дата 8.4.2007, 12:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Создатель
***


Профиль
Группа: Завсегдатай
Сообщений: 1262
Регистрация: 14.2.2006
Где: Москва

Репутация: 4
Всего: 8



А что "сессии"?
Браузер захочет и не станет ни кукисы, ни авторизацию воспринимать, вообще сдохнет, станет что угодно показывать. На стороне клиента черти могут по потолку бегать.
Если ресурс скачан, то он во владении клиента.
PM MAIL ICQ Skype   Вверх
Ramirez
Дата 8.4.2007, 21:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 305
Регистрация: 18.1.2005
Где: Moscow, ExUSSR

Репутация: 4
Всего: 5



так сессии то сервер ведет. он должен решать что принимать от браузера а что нет. например при запросе генерить уникальный параметр вставлять его в форму, и запоминать где-то. по нему отличать что форма отсылается браузером повторно. 

А вот вопрос чисто-визуальный запретить нопку ''назад" это действительно на стороне клиента на 100%, тут только трюки из серии "защита от дурака", а отослать повторно браузел всегда сможет если очень захочет.

Это сообщение отредактировал(а) Ramirez - 8.4.2007, 21:59
PM ICQ   Вверх
tishaishii
Дата 12.4.2007, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Создатель
***


Профиль
Группа: Завсегдатай
Сообщений: 1262
Регистрация: 14.2.2006
Где: Москва

Репутация: 4
Всего: 8



Слушай, ну скачал я страничку с заполненной формой. После скачки форма стала незаполненная (зависит от браузера и настроек). Ну разобрал я страницу, ну отправил я запрос POST с нужным Referer и прочими полями. Ну и всё. А теперь представь, что это делает всё программа.

Moziila FF, например, с нужными настройками вернётся назад и покажет заполненные поля без проблем. А легко можно создать и свой на основе существующего (например, MSIE).
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0897 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.