|
|
|
| Здравствуйте все уважаемые кодеры. У меня возникла вот такая проблема :
Есть простая хтмл станчка на ней большущая форма ввода инфы. Когда юзверь это все заполняет и нажимае кнопочку передать оно оправляеться в php. Но тут проблема юзверь может в броузере нажать кнопочку назад и отправить эти данные ещё рас чего делать не стоит у меня на php фильтр то стоит но как сделать так чтобы при возврате юзверя назад та кнопочка передать была но нажать на неё невозможно (как в винде типа неактивная кнопка) | |
|
|
|
|
|
|
|
для: ReZiStOr
(18.08.2007 в 13:04)
| | Эту проблему надо решать не на стороне клиента, а на сервере. Перенаправляйте клиента на другую страницу, после приема данных:
header("Location: name.php"); | |
|
|
|
|
|
|
|
для: sim5
(18.08.2007 в 14:26)
| | ну вообще как блок кнопки сделать чтобы она была но нажать на неё е возможно бы ло бы есть какое то свойство ?? вот как сделано например на ucoz.ru при вооде ошибочного имени или пароля назад вернуться и исправить можно но передать эти данные нет потому что кнопка заблокирована подскажите просто как кнопку сделать не активной остальное я сам постараюсь решить | |
|
|
|
|
|
|
|
для: ReZiStOr
(18.08.2007 в 16:30)
| | Ну если вы ссылаетесь на ucoz.ru, то видимо читали, что это бесплатная CMS - скачивайте и смотрите как у них сделано, что еще проще может быть. | |
|
|
|
|
|
|
|
для: sim5
(18.08.2007 в 17:07)
| | причем тут то на что я ссылаюсь неужели тяжело написать свойство кнопки чтобы её заблокировать ? | |
|
|
|
|
|
|
|
для: ReZiStOr
(18.08.2007 в 18:58)
| | И вы уверены что это вас защитит? Нужен работающий код, соизвольте взять, либо выложите свой и спросите в чем у вас трудности. А свойство кнопки, которое вам так нужно, не сложно и HTML документации посмотреть - disabled. | |
|
|
|
|
|
|
|
для: sim5
(18.08.2007 в 19:13)
| | спасибо большое это все что мне надо ! | |
|
|
|
|
|
|
|
для: ReZiStOr
(18.08.2007 в 13:04)
| | Для того, чтобы гарантировано юзверь не смог отправить форму ещё раз, при нажатии в браузере back, можно сделать так:
1) удалить history браузера ;) - тогда он не нажмёт back
2) отправлять данные из формы средствами AJAX
Блокировка кнопки необходима на клиенте после клика только для того, чтобы юзверь не кликнул быстро на капу 2 раза и не отправил на серв несколько форм. Но такие вещь обычно ещё и на серве контролируются. Без этого нельзя. | |
|
|
|
|
|
|
|
для: Chronus
(18.08.2007 в 19:24)
| | Да вы знаете вы правы просто это можно написать сразу было а нероспрягать про какие то стороны клиента и сервера протсо если человек не ориентируеться в данном вопросе (не будем показывать пальцами) то простите за выражение не фиг отписывать спасибо всем за ответы | |
|
|
|
|
|
|
|
для: ReZiStOr
(18.08.2007 в 19:59)
| | Вам изначально надо было подумать - нужна ли вам эта "волшебная кнопка". Хотите действующий скрипт, пожалуйста, скачивайте хотя бы понравившийся вам (CMS), смотрите. За вас ведь никто писать ничего не будет. Вам это не подходит. Вы начинающий, тогда и с AJAX у вас не все гладко получиться, само по себе это волшебное слово "AJAX" вам ничего не даст. Думать надо над решением задачи, и выбирать оптимальный для вас путь.
Я вам говорил о самом простом способе - перенаправление пользователя. У вас для принятия данных от пользователя может быть несколько страниц - последовательный вывод форм, а может быть и одна страница, но выводить она будет форму в зависимости от условий - правильно или нет ввел пользователь (на определенном этапе) данные. И если нет, то перенаправлять его на другую страницу, или в одно и тоже "условие" одной страницы, до тех пор пока он не введет данные правильно, и делается это просто:
<?php
header("Location: add.php?log=$log&yes=1"); //перенаправление на эту же страницу с парметрами,
//по которым определить, что вывести для пользователя в новом шаге
header("Location: add2.php"); //переход на другую страницу, если верно
?>
|
Вот так, и никакого AJAX не потребуется. | |
|
|
|