Вход пользователя без перезагрузки страницы?

Qest
На сайте с 21.10.2010
Offline
40
745

На главной странице сайта пользователь должен либо авторизоваться либо зарегистрироваться. Делаю это с помощью Ajax и Cookies.

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

При вводе данных в поля регистрации они отправляются аяксом в php скрипт на обработку и после через аякс возвращается так же php скрипт где пользователю присваиваются куки.

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

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

Как значение этой переменной, которая на php и определяет значение залогинен ли пользователь или нет, изменить динамически, тоесть посредством JS я полагаю?

М
На сайте с 08.02.2006
Offline
59
#1
Как значение этой переменной, которая на php и определяет значение залогинен ли пользователь или нет, изменить динамически, тоесть посредством JS я полагаю?

Никак.

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

S
На сайте с 27.03.2009
Offline
29
#2

А может не использовать Ajax при авторизации и перегрузить страницу? Слишком много Ajax тоже не хорошо. Или те блоки, которые вы говорите зависят от того, авторизирован пользователь или нет, формировать также посредством Ajax (как вариант для каждого блока написать свою функцию)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий