Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> вопрос по session, запрет ++ для счетчика 
V
    Опции темы
godvinn
Дата 3.9.2009, 18:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 407
Регистрация: 4.4.2008
Где: possibility of mo ving to Kyiv

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



Есть форма, по нажатию submit отправляются данные (перед этим проверяется на корректность значения в полях и т.д ) и увеличивается счетчик сессии для отображения следующих данных, проблема в следующем если пользователь начитает отправлять слишком быстро(начинает быстро клацать на кнопке), счетчик сессии увеличивается и отображаются новые данные а при внесении вносятся старые данные. Как запретить отображать и вносить данные в этом случае *? 


--------------------
Everything happens in life.
user posted image
PM MAIL   Вверх
Ипатьев
Дата 3.9.2009, 18:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



ничего непонятно.
какие данные отображаются? какие вносятся? что за счетчик?
PM MAIL   Вверх
godvinn
Дата 3.9.2009, 18:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 407
Регистрация: 4.4.2008
Где: possibility of mo ving to Kyiv

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



какие данные отображаются? какие вносятся? что за счетчик? 

в базе есть данные там их около 50 записей, на странице должно отображаться не больше 2 (это не пейджер должен быть) 

по клику (кнопке далее) к счетчику в сессии добавляется значение +2 и отображаются следующие данные, при этом происходит перегрузка страницы, для того чтобы сохранить счетчик используется сессия. 
но проблема в следующем если пользователь начитает отправлять слишком быстро(начинает быстро клацать на кнопке), счетчик сессии увеличивается и отображаются новые данные а при внесении вносятся старые данные. Как запретить отображать и вносить данные в этом случае *?  


--------------------
Everything happens in life.
user posted image
PM MAIL   Вверх
NewDima
Дата 3.9.2009, 19:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 922
Регистрация: 20.2.2006
Где: <?here?>

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



вот это место мало понятно
Код

счетчик сессии увеличивается и отображаются новые данные а при внесении вносятся старые данные.

При каком внесении? внесении куда?
PM ICQ   Вверх
s0lman
Дата 3.9.2009, 21:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и лохматый
**


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

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



Как я понял, проблема в запрете пользователю слишком часто отправлять данные?

Как вариант - при отсылке данных в той же сессии сохранить mktime(), а при следующей попытке отправить данные - проверить разницу между текущей меткой времени и сохраненной в сесии

godvinn, в самом деле, условие задачи очень плохо сформулировано smile



--------------------
Когда я уже выучусь на волшебника? :(
PM   Вверх
bars80080
Дата 3.9.2009, 22:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

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



в БД? при очередной отправки формы вместо значений в полях в БД вносятся данные из предыдущего шага?
PM MAIL WWW   Вверх
icewind
Дата 4.9.2009, 00:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Осмелюсь предположить, что речь идет о многоступенчатой регистрации или какой - либо анкете и проблема возникает в несоответствии данных в сессии для конкретного шага и ожидаемого значения ( я так понял что данные для нового шага отображаются нормальные но значения дублируются с предыдущего шага ) в результате чего в базу пишется не корректная информация. Так?  smile 

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

А так все обсуждение ( угадывание ) в этой теме напоминает телевикторину  smile 

Это сообщение отредактировал(а) icewind - 4.9.2009, 00:27


--------------------
user posted image
PM MAIL Skype   Вверх
s0lman
Дата 4.9.2009, 09:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и лохматый
**


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

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



Цитата(icewind @  4.9.2009,  00:26 Найти цитируемый пост)
А так все обсуждение ( угадывание ) в этой теме напоминает телевикторину

На экзамен по телепатии  smile 



--------------------
Когда я уже выучусь на волшебника? :(
PM   Вверх
godvinn
Дата 4.9.2009, 09:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 407
Регистрация: 4.4.2008
Где: possibility of mo ving to Kyiv

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



bars80080, да именно внесение данных из предыдущего шага. 
Есть вывод 2 вариантов с radio button,  то есть предложение и 2 варианта выбора, и для того чтобы выводить следующие данные использую для сохранения счетчика сессию. А вносятся они в массив который по окончании предложений вносится в бд.  


Это сообщение отредактировал(а) godvinn - 4.9.2009, 09:49


--------------------
Everything happens in life.
user posted image
PM MAIL   Вверх
Ипатьев
Дата 4.9.2009, 09:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Все равно непонятно.
А что - правильное заполнение формы не проверяется?
Зачем увеличивать счетчик, если не был выбран ни один из вариантов ответа?
PM MAIL   Вверх
godvinn
Дата 4.9.2009, 10:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 407
Регистрация: 4.4.2008
Где: possibility of mo ving to Kyiv

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



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


--------------------
Everything happens in life.
user posted image
PM MAIL   Вверх
Ипатьев
Дата 4.9.2009, 10:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



чего-чего?
"если в radio button имя то одно подставляться только value" - это на каком языке?

откуда "возьмут старые значения"? никаких значений "со старого шага" в сессии не может быть. что за странные фантазии?
PM MAIL   Вверх
icewind
Дата 4.9.2009, 10:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Я не могу понять... У меня одного не получается связывать эти слова в предложения?  smile 

Цитата(godvinn @  4.9.2009,  10:10 Найти цитируемый пост)
но если форма генерируется на каждом шаге,  то если в radio button имя то одно подставляться только value и они если быстро нажать на кнопке submit возьмут просто старые значения с предыдущего шага


Значит форма заполнена новыми значениями и если нажать submit один раз, то все будет нормально? А если несколько, то данные просто будут продублированы с предыдущего шага?

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


--------------------
user posted image
PM MAIL Skype   Вверх
godvinn
Дата 4.9.2009, 10:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 407
Регистрация: 4.4.2008
Где: possibility of mo ving to Kyiv

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



Значит форма заполнена новыми значениями и если нажать submit один раз, то все будет нормально? А если несколько, то данные просто будут продублированы с предыдущего шага?
Именно так 


--------------------
Everything happens in life.
user posted image
PM MAIL   Вверх
Ипатьев
Дата 4.9.2009, 10:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



этого не может быть. пока один скрипт не закончит запись в сессию, никакой другой доступа к ней не получит
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

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


 




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


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

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