Всплывающая страница входа - PullRequest
0 голосов
/ 07 октября 2011

Я создал страницу входа на www.mywebsite.com/members/login

Я использую Zend Framework, Теперь я хочу иметь всплывающее диалоговое окно входа в систему, чтобы не нужно было перенаправлять людей слишком много раз для аутентификации, я предпочтительно хочу использовать для этого диалог jquery.

Я хочу, чтобы это оказало минимальное влияние на страницу входа, я имею в виду, я не хочу перепрограммировать все заново,

Каков наилучший способ сделать это?

Я могу придумать пару вариантов 1- Иметь весь код на всех страницах, а затем «диалоги», когда это необходимо 2- Используйте Iframe в диалоге jquery, чтобы показать содержимое страницы входа в систему

Я думаю, что 2 лучше, потому что содержимое iframe может быть ssl, а остальная часть страницы - нет, так что это хорошо

Но мне было интересно, есть ли какие-нибудь лучшие способы сделать это или нет.

Ответы [ 2 ]

2 голосов
/ 07 октября 2011

Вам необходимо создать форму входа в качестве «виджета» с помощью помощников действий. Вот отличный способ сделать это самим руководителем проекта Zend Framework:

http://weierophinney.net/matthew/archives/246-Using-Action-Helpers-To-Implement-Re-Usable-Widgets.html

1 голос
/ 07 октября 2011

Настройка

Поместите html логин в отдельный файл (login.html). Обратите внимание, что у него не должно быть тегов <html> <head> or <body>, просто оберните его в <div> с идентификатором. Это должно включать все необходимые поля и кнопку отправки.

Процесс входа в систему

Нажатие на ссылку или кнопку 'login', в этот момент вы откроете диалоговое окно и начнете ajax-вызов, используя функцию .load () jQuery , чтобы получить html содержимое в login.html и поместите его в раздел содержимого модального jQuery. Если вы выполняете какую-либо проверку формы на стороне клиента или вам нужны дополнительные CSS, посмотрите на jQuery $. GetScript () и (для CSS) просто добавьте элемент в заголовок вашей страницы с помощью ссылки, указывающей на ваш CSS файл.

Теперь, когда все загружено, клиент может отправить форму, как обычно, из диалогового окна. Если вы хотите, вы также можете использовать ajax для отправки формы на сервер.

Дайте мне знать, если вам нужна помощь с конкретным кодом или у вас есть вопросы по поводу этой настройки.

...