После входа в систему выполнить функцию и перенаправить на предыдущую страницу

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 Да, вы абсолютно правы
Теги:
codeigniter
session
login

1 ответ

0
Лучший ответ

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

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

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

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

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

Ещё вопросы

Сообщество Overcoder
Наверх
Меню