Zend-framework: как хранить данные формы (письменный отзыв пользователя) до тех пор, пока пользователь не создаст новую учетную запись

Я новичок в зенде. На веб-сайте, который я создаю с помощью zend/php, люди могут прийти и написать отзыв. По умолчанию мы разрешаем пользователю писать обзор, не проверяя, зарегистрирован ли пользователь, но перед отправкой мы просим их либо войти в систему, либо создать учетную запись (преднамеренная стратегия, чтобы больше людей написали обзор). В этих случаях мне нужно сохранить данные, введенные пользователем, чтобы они были введены в нашу базу данных сразу после входа в систему. Как мне это сделать?

Один из способов, который я могу придумать, - сохранить все данные, введенные пользователем, в переменные сеанса. Есть ли более умные/интеллектуальные или общепринятые способы сделать это?


person ankit    schedule 22.11.2011    source источник


Ответы (1)


Как вы упомянули, самое первое, что приходит на ум, это использование переменной SESSION. Единственное, что я могу добавить и порекомендовать, это использовать Zend_Session_Namespace класс для хранения данных, чтобы ваши данные никоим образом не искажались. Ваше здоровье.

Другой вариант

Вы также можете использовать javascript/ajax.

Когда пользователь собирается отправить форму, вы скрываете форму с помощью javascript и загружаете форму создания учетной записи. Затем вы можете отправить через ajax. В этом случае данные формы по-прежнему доступны на странице...

person burntblark    schedule 22.11.2011
comment
Спасибо за ответ. Вот что пришло мне на ум. Я оставлю этот вопрос открытым на некоторое время, чтобы мы могли сгенерировать еще несколько идей. - person ankit; 23.11.2011
comment
Вы видели обновление. Мне кажется, это даже более уместно. На этот раз сеансы не нужны. Хотя это немного более технично - person burntblark; 07.12.2011