![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| studentigor |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 397 Регистрация: 14.11.2008 Репутация: нет Всего: нет |
Всем привет.
Есть форма для комментария. Всего одно поле textarea и кнопка. Так вот, при нажатии на кнопку все записует, все ок. Но нажимаю F5 и снова записуется, и снова и снова. Я сделал редирект через хедер, но ничего не помогает. Как можно решить эту проблемку. Вот код где идет редирект
может это просто в мазиле такая хрень. Пробовал джаваскриптом чистить форму - она пустая. пробовал делать unset($_POST) - ноль реакции. Спасибо |
|||
|
||||
| kovaldm |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 20.8.2011 Где: РФ Репутация: 2 Всего: 2 |
А у тебя header точно срабатывает? Мож вывод какой-нибудь есть до него или BOM?
|
|||
|
||||
| studentigor |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 397 Регистрация: 14.11.2008 Репутация: нет Всего: нет |
Хедер, если до его есть вывод - не работает.
Я менял местами $_GET данные и перенаправило правильно, но вот это всеравно срабатывает
перед этим подключается сессия и файл с настройками бд |
|||
|
||||
| kovaldm |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 20.8.2011 Где: РФ Репутация: 2 Всего: 2 |
Не понял, после перенаправления нажатие F5 все равно отправляет данные серверу?
Вместо microtime() и explode() можно использовть time(). Это сообщение отредактировал(а) kovaldm - 1.9.2011, 19:44 |
|||
|
||||
| studentigor |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 397 Регистрация: 14.11.2008 Репутация: нет Всего: нет |
да. сколько раз нажимаю f5 столько и записуется в базу, хотя по идее не должно.
|
|||
|
||||
| kovaldm |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 20.8.2011 Где: РФ Репутация: 2 Всего: 2 |
Попробуй включи буферизацию первой строчкой в индексе.
|
|||
|
||||
| MoLeX |
|
|||
![]() Местный пингвин ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4076 Регистрация: 17.5.2007 Репутация: 46 Всего: 140 |
после header надо ставить exit();
-------------------- Amazing |
|||
|
||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 10 Всего: 71 |
а может просто поставить "маячок"? Например, записать в сессию номер записи после первого сохранения. А перед записью в базу проверять существование ID, а если есть, то существование его уже в самой базе.. Тогда ты избежишь перезаписи в базу..
Очень простая, но действующая защита от дураков... А ещё можно воспользоваться не INSERT, а REPLACE -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| Absinthe |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 526 Регистрация: 4.5.2011 Репутация: 5 Всего: 11 |
|
|||
|
||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 10 Всего: 71 |
Absinthe, ещё есть кнопка НАЗАД у браузеров. Это тоже самое что F5 будет
Это сообщение отредактировал(а) Gold Dragon - 2.9.2011, 13:35 -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| Smorodin |
|
|||
![]() Добрейший ![]() ![]() Профиль Группа: Участник Сообщений: 285 Регистрация: 10.4.2006 Где: Пермь Репутация: нет Всего: 1 |
Так после хедера стоит или нет exit()? Если стоит, то все равно заново отправляет?
-------------------- Сделать можно все, только вопрос - когда? |
|||
|
||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 10 Всего: 71 |
-------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| Absinthe |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 526 Регистрация: 4.5.2011 Репутация: 5 Всего: 11 |
|
|||
|
||||
| MoLeX |
|
|||
![]() Местный пингвин ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4076 Регистрация: 17.5.2007 Репутация: 46 Всего: 140 |
по всей видимости у тс редирект не проходит
-------------------- Amazing |
|||
|
||||
| capitan |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 602 Регистрация: 27.2.2005 Где: Москва Репутация: 9 Всего: 13 |
Поясните пожалуйста как возможно одновременное использование $_GET и $_POST ? Это не возможно. Вы уж определитесь как происходит передача данных.
|
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |