2015-01-10 1 views
0

Я создал такую ​​страницу, как all_elements, которая содержит list of elements и предоставила опцию adding an element to wishlist.После входа в систему Выполнить функцию и перенаправить на предыдущую страницу

Шаги следующие.

  1. Если пользователь вошел в систему, элемент добавляет к списку желаний через ajax call.
  2. Если пользователь не вошел в систему, он должен попросить пользователя войти в систему.
  3. После успешного входа в систему элемент должен быть added to wishlist и перенаправлен на all_elements page.

Я пытаюсь выполнить следующие шаги.

  1. Если пользователь не вошел в систему, сохраняя ссылку для добавления элемента в список пожеланий и перенаправляя его на страницу входа в систему.
  2. После успешного входа в систему, его перенаправление на all_elements page. Но я проверяю каждый раз session link which included adding course to wishlist.

Но я думаю, что это плохое кодирование, потому что каждый раз, когда мне нужно проверить связь сеанса в all_elements page.

Пожалуйста, предложите мне хорошее решение, и работа будет оценена по достоинству.

+1

Я не уверен, что следую за вами, но похоже, что вы хотите сохранить элемент, который пользователь пытается добавить, и как только они войдите в систему успешно, вы хотите добавить этот элемент и перенаправить их на страницу all_elements, которая будет включать элемент, который они только что добавили? Это правильно? –

+0

@JacobCarter Да, вы точно верны –

ответ

0

Если я правильно понял, это делается с параметром GET на странице входа (в качестве параметра POST, если форма является ajaxy).

Например, предположим, что я хочу щелкнуть где-то, что требует входа в систему, ссылки, которые я назвал www.example.com/secret.

Вы можете сохранить сегмент URI (или весь URL-адрес) в качестве параметра $ _GET, как только вы войдете в свою функцию, проверьте, существует ли $ _GET ['redirect'], если это так, попробуйте перенаправить на него.

Таким образом, логика «перенаправления» встроена в логин, а не в каких-либо других функциях, это позволяет расширить эту функциональность на любую другую часть веб-сайта, вместо проверки сеанса.

Это также можно сделать, используя сеанс, сохраняя ссылку в переменной $ _SESSION ['redirect']. В любом случае, эти проверки должны быть выполнены после входа в систему, а не на какой-либо одной странице.

Смежные вопросы